定义一个json数据(length长度必须要有,且与内容的个数一致,不然转换后的数组会有undefined,必须从0开始,不然数组前面的数据会有undefined,数字上的引号可以省略,如果不是数字,则不会被转成数组里的值):
let json = {
'0':'aa',
'1':'bb',
'2':'cc',
length:3
};
用Array.from转化json数据:
let arr = Array.from(json);
console.log(arr); //(3) ["aa", "bb", "cc"]
通过该方法,可以将一堆值转化成一个数组(返回的是由参数值组成的数组):
let a = 'aa';
let b = 'bb';
let c = 'cc';
let arr = Array.of(a,b,c);
console.log(arr); //(3) ["aa", "bb", "cc"]
Array.of()如果不传值,则返回一个空数组
find()是一个实例方法,只能通过声明的数组变量来调用,而不能通过Array来调用,find()里是一个回调函数,有三个参数,value,index,arr
value表示每一次查找的数组元素,index表示每一次查找的数组元素的索引(下标),arr表示被查找的数组,如果找到了,则返回找到的数组元素,如果没找到,则返回undefined
let arr = ['aa','bb','cc'];
let res = arr.find((value,index,arr)=>{
return value==='cc';
});
console.log(res); //cc
fill()是一个实例方法,可以用来填充数组
fill()里的第一个参数为要填充的数据,第二个参数表示数组填充的开始位置,第三个参数表示数组填充的结束位置(不包含该位置)
如果只传一个参数,可以用来做数组的初始化:
let arr = Array(5).fill(7);
console.log(arr); //(5) [7, 7, 7, 7, 7]
传三个参数的时候:
let arr = Array(5).fill(7);
console.log(arr); //(5) [7, 7, 7, 7, 7]
arr.fill(6,2,3);
console.log(arr); //(5) [7, 7, 6, 7, 7]
例:
let arr = ['aa','bb','cc'];
for(let item of arr){
console.log(item);
}
如果要通过for-of循环,循环出数组的索引(下标),可以通过如下的方式:
let arr = ['aa','bb','cc'];
for(let item of arr.keys()){
console.log(item);
} //分别打印出0、1、2
如果要同时输出数组的索引和内容,可以通过如下方式:
let arr = ['aa','bb','cc'];
for(let [index,value] of arr.entries()){
console.log(index + ' - ' + value);
}
//分别打印0 - aa 1 - bb 2 - cc