# Array_Func **Repository Path**: chengll000/array_-func ## Basic Information - **Project Name**: Array_Func - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-06-15 - **Last Updated**: 2021-08-31 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## filter()、some()、every()方法的区别 ### `filter` 创建一个新数组,新数组中的元素都是符合指定条件过滤后的元素。 特点: (1)filter会遍历数组中的每一项,找到符合指定条件的元素返回。返回一个新数组。 (2)filter对空数组不会进行检测,不会改变原始数组。 ```js let arr = [1,2,6,7,8]; let filterArr = arr.filter(item=>{return item == 6}); console.log('arr:',arr); // [ 1, 2, 6, 7, 8 ], console.log('filterArr:',filterArr); // [6] // 空数组不进行检测,未打印Kong var newArr = [].filter(item=>{console.log('Kong')}); console.log(newArr); // [] ``` ### `some` 用来检测数组中的元素是否满足指定条件。 特点: (1)若有一个元素符合条件,则返回true,且后面的元素不会再检测。 (2)不会对空数组进行检测,不会改变原数组 ```js let hadVal2 = arr.some(item=>{ console.log(item); // 1,2 return item == 2; }); let hadVal10 = arr.some(item=>{return item == 10}); console.log('arr:',arr); // [ 1, 2 ] console.log('hadVal2:',hadVal2); // true console.log('hadVal10:',hadVal10); // false ``` ### `every` 用来检测数组中每个元素(检测所有元素)是否都符合指定条件。 特点: (1)若有一个不满足条件,则返回false,后面的元素都不会再执行。 (2)不会对空数组进行检测,不会改变原始数组 ```js // 检测数组中每个元素是否 都满足 加2后小于5 let everyFlag = arr.every(item=>{ console.log(item); // 1,2,6 return item + 2 < 5 }); console.log('arr:',arr); // [ 1, 2, 6, 7, 8 ] console.log('everyFlag:',everyFlag); // false let everyEmptyFlag = [].every(item=>{console.log('Kong...');}); console.log('everyEmptyFlag:',everyEmptyFlag); // true ```