1、將特定格式的json數(shù)據(jù)轉(zhuǎn)成數(shù)組
定義一個(gè)json數(shù)據(jù)(length長度必須要有,且與內(nèi)容的個(gè)數(shù)一致,不然轉(zhuǎn)換后的數(shù)組會(huì)有undefined,必須從0開始,不然數(shù)組前面的數(shù)據(jù)會(huì)有undefined,數(shù)字上的引號(hào)可以省略,如果不是數(shù)字,則不會(huì)被轉(zhuǎn)成數(shù)組里的值):
let json = {
'0':'aa',
'1':'bb',
'2':'cc',
length:3
};
用Array.from轉(zhuǎn)化json數(shù)據(jù):
let arr = Array.from(json);
console.log(arr); //(3) ["aa", "bb", "cc"]
2、Array.of方法
通過該方法,可以將一堆值轉(zhuǎn)化成一個(gè)數(shù)組(返回的是由參數(shù)值組成的數(shù)組):
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()如果不傳值,則返回一個(gè)空數(shù)組
3、find()
find()是一個(gè)實(shí)例方法,只能通過聲明的數(shù)組變量來調(diào)用,而不能通過Array來調(diào)用,find()里是一個(gè)回調(diào)函數(shù),有三個(gè)參數(shù),value,index,arr
value表示每一次查找的數(shù)組元素,index表示每一次查找的數(shù)組元素的索引(下標(biāo)),arr表示被查找的數(shù)組,如果找到了,則返回找到的數(shù)組元素,如果沒找到,則返回undefined
let arr = ['aa','bb','cc'];
let res = arr.find((value,index,arr)=>{
return value==='cc';
});
console.log(res); //cc
4、fill()
fill()是一個(gè)實(shí)例方法,可以用來填充數(shù)組
fill()里的第一個(gè)參數(shù)為要填充的數(shù)據(jù),第二個(gè)參數(shù)表示數(shù)組填充的開始位置,第三個(gè)參數(shù)表示數(shù)組填充的結(jié)束位置(不包含該位置)
如果只傳一個(gè)參數(shù),可以用來做數(shù)組的初始化:
let arr = Array(5).fill(7);
console.log(arr); //(5) [7, 7, 7, 7, 7]
傳三個(gè)參數(shù)的時(shí)候:
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]
5、for of 循環(huán)數(shù)組
例:
let arr = ['aa','bb','cc'];
for(let item of arr){
console.log(item);
}
如果要通過for-of循環(huán),循環(huán)出數(shù)組的索引(下標(biāo)),可以通過如下的方式:
let arr = ['aa','bb','cc'];
for(let item of arr.keys()){
console.log(item);
} //分別打印出0、1、2
如果要同時(shí)輸出數(shù)組的索引和內(nèi)容,可以通過如下方式:
let arr = ['aa','bb','cc'];
for(let [index,value] of arr.entries()){
console.log(index + ' - ' + value);
}
//分別打印0 - aa 1 - bb 2 - cc