JS数组常用函数

72 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第6天,点击查看活动详情

数组函数 Array.of() 用于将一组值,转换为数组

Array.of(1,2,3); //[1, 2, 3]

find()用于找出第一个符合条件的数组成员。它的参数是一个回调函数,,所有数组成员依次执行该回调 函数,直到找出第一个返回值为true的成员,然后返回该成员。如果没有符合条件的成员,则返回 undefined。

var a = arr.find(function(item,index,arr){ //用于找出第一个符合条件的数组成员 return item >5 });

findIndex()方法的用法与find方法非常类似,返回第一个符合条件的数组成员的位置,如果所有成员都不 符合条件,则返回-1

var a = arr.find(function(item,index,arr){ //用于找出第一个符合条件的数组成员 return item >5 });

fill() 定义:用于将一个固定值替换数组的元素。

value(必需):填充的值。

start(可选):开始填充位置。

end(可选):停止填充位置 (默认为 array.length)。


var arr = ["blue", "Orange", "red", "green"]; arr.fill("abc", 2, 4); 
//["blue", "Orange", "abc", "abc"]

includes() 方法返回一个布尔值,表示某个数组是否包含给定的值,与字符串的 includes 方法类似

var arr = ["blue", "Orange", "red", "green"]; arr.includes('blue'); //true

flat() 用于将嵌套的数组“拉平”,变成一维的数组 ,该方法返回一个新数组,对原数据没有影响。


//默认只会“拉平”一层,如果想要“拉平”多层的嵌套数组,可以将flat()方法的参数写成一个整数,表示想要 拉平的层数,默认为1。flat()的参数为2,表示要“拉平”两层的嵌套数组

[1, 2, [3, [4, [6]]],[7, 8]].flat(2); //[1, 2, 3, 4, [6], 7, 8]

//如果不管有多少层嵌套,都要转成一维数组,可以用Infinity关键字作为参数。

[1, 2, [3, [4, [6]]],[7, 8]].flat(Infinity); //[1, 2, 3, 4, 6, 7, 8]

filter()用于对数组进行过滤。 它创建一个新数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。 array.filter(function(currentValue,index,arr), thisValue); (1)filter() 不会对空数组进行检测; (2)filter() 不会改变原始数组。

const arr=[1,2,3,4].filter(item=>{
    return item>2
})
console.log(arr)//输出[3,4]