js 数组实用函数 淡淡的烟草味﹌ 2022-12-28 08:12 147阅读 0赞 **1.map** map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。 map() 方法按照原始数组元素顺序依次处理元素。 let arr = [1,22,34,56,76,89] let arr2 = arr.map((val,index,arr) => { return val + '修改' }) // arr ["1修改", "22修改", "34修改", "56修改", "76修改", "89修改"] // arr2 [1,22,34,56,76,89] **2.reduce** 语法 arr.reduce((total, currentValue, currentIndex, arr) => \{\},initialValue) arr 操作的原始数组 total上一次调用的返回值,第一次调用是初始值 即 int currentValue正在处理的当前数组元素 currentIndex当前正在处理的数组的索引 initialValue累计的初始化值 let arr = [1,22,34,56,76,89] let total = arr.reduce((total,val)=>{ return total + val }) console.log(total) // 278 实际事例:[根据对象的路径修改对象下的属性][Link 1] **3.filter** 过滤器,筛选出符合要求的数据。 arr.filter((currentValue,index,arr)=>{ return true||false }, thisValue) arr 原始数组 currentValue 当前循环到的val值 index 当前循环到的索引值 根据return的值来决定是否添加到新的数组里返回出来 let arr = [1,22,34,56,76,89] let arr2= arr.reduce((val,index)=>{ return val > 11 && index > 3 }) console.log(arr2) // [76, 89] **4.find** find() 方法返回通过测试(函数内判断)的数组的第一个元素的值。 find() 方法为数组中的每个元素都调用一次函数执行: 语法 arr.find(function(currentValue, index, arr) => { return true||false },thisValue) arr 原始数组 currentValue 当前循环到的val值 index 当前循环到的索引值 和**filter** 的区别,fiter 返回的是一个符合条件的数组,**find**数组的第一个元素的值。 **5.findeIndex** 和find 区别是返回 第一个符合条件的索引 **6.every** every() 方法用于检测数组所有元素是否都符合指定条件(通过函数提供)。 every() 方法使用指定函数检测数组中的所有元素: * 如果数组中检测到有一个元素不满足,则整个表达式返回 *false* ,且剩余的元素不会再进行检测。 * 如果所有元素都满足条件,则返回 true。 语法 array.every(function(currentValue,index,arr),thisValue) **7.some** some() 方法用于检测数组中的元素是否满足指定条件(函数提供)。 some() 方法会依次执行数组的每个元素: * 如果有一个元素满足条件,则表达式返回*true* , 剩余的元素不会再执行检测。 * 如果没有满足条件的元素,则返回false。 语法 array.some(function(currentValue,index,arr),thisValue) <script>console.log(document)</script> [Link 1]: https://blog.csdn.net/banglei123/article/details/106488730
还没有评论,来说两句吧...