提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
1.数组创建
(1)Array.of():将参数中所有值作为元素形成数组
var arr=Array.of(10,20,30) //Array.of(10)
var arr2=new Array(10)
console.log(arr,arr2)
运行结果:
(2)Array.from():将类数组对象或可迭代对象转化为数组
var s1=new Set()
s1.add(10)
s1.add(20)
s1.add(30)
s1.add(19)
var arr=Array.from(s1,function(el){
console.log(el,this)
return el+"岁"
},s1)
console.log(arr)
运行结果:
let arr = Array.from({
0: '1',
1: '2',
2: 3,
length: 3
});
console.log(arr);
运行结果:
2.查找:find()
find():查找数组中符合条件的元素,若有多个符合条件的元素,则返回第一个元素
查到了第一个符合条件的,后面的就不查找了
案例:
var arr=[10,20,40,2,30,5,6]
var re=arr.find(function(el){
console.log(111)
if(el>18){return true}
})
console.log(re)
运行结果:
3. includes() 方法:数组是否包含指定值
includes() 方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
案例:
var arr=[10,20,40,2,30,5,6]
var re=arr.find(function(el){
console.log(111)
if(el>18){return true}
})
console.log(re)
var arr=[1,23,5,56,{name:"karen"}]
var re=arr.includes({name:"karen"})
console.log(re)
运行结果:
4. findIndex() 方法
查到了第一个符合条件的,后面的就不查找了,就输出找到的第一个元素的下标
案例:
var arr=[10,304,50]
var re=arr.findIndex(function(el){
if(el>18){return true}
})
console.log(re)
运行结果:
5.fill( )
fill():将一定范围索引的数组元素内容填充为单个指定的值。
案例:
var arr=[10,203,4,100,3004,5]
var arr2=arr.fill("hello",2,4)
console.log(arr,arr2)
console.log(arr==arr2)
运行结果:
程序举例:
var arr = [{
name: "karen",
age: 18
},
{
name: "jack",
age: 28
},
{
name: "marry",
age: 8
},
{
name: "joe",
age: 12
}
]
arr.map(function(el,index){
if(el.age>=18){
el.drink=true
arr.fill(el,index,index+1)
}
})
console.log(arr)
运行结果:
6. flat()函数:降维
var arr=[[10,20,30],40,50,[[60,70],80,[90,[110],100]]]
var arr2=arr.flat(3)
console.log(arr2)
运行结果:
7.实现flat( )函数降维
8.keys( ) values( )
entrys():遍历键值对。
keys():遍历键名。
values():遍历键值