数组

新增一个运算符(**)

用法:

//Math.pow(2,3) 相当于 2 ** 3

for…of…

  • arr.keys() 数组下标

  • arr.entries() 数组的某一项

  • 用法示例:

let arr = ['apple','banana','orange','tomato'];

for(let val of arr){
   
    console.log(val);
}

for(let index of arr.keys()){
   
    console.log(index);
}

for(let item of arr.entries()){
   
    console.log(item);
}

for(let [key, val] of arr.entries()){
   
    console.log(key,val);
}

Array.form()

  • 作用:可以将类数组对象装换成数组,(proto : Array)
function show(){
   
    let args= Array.from(arguments);
    args.push(6);
    console.log(args);//[1,2,3,4,5,6]
}


let str = 'Strive';
//let arr = str.split('');
let arr = Array.from(str);
console.log(arr);//["S", "t", "r", "i", "v", "e"]


let json ={
   
    0:'apple',
    1:'banana',
    2:'orange',
    length:3
};
let arr = Array.from(json);
console.log(arr);//["apple", "banana", "orange"]

上面这三个例子的__proto__都为Array

Array.of()

  • 作用:把一组值转换为数组
let arr = Array.of('apple','banana','orange');
console.log(arr);//["apple", "banana", "orange"]

新增的数组的几个方法

  • arr.find()
    作用:找出第一个符合要求的数组成员,如果没有则返回undefined
let arr = [23,900,101,80,100];
let res = arr.find((val, index, arr) =>{
   
    return val>1000;
});
console.log(res);//undefined
  • arr.findIndex()
    作用:找出第一个符合要求的数组成员的位置,没找到则返回-1

  • arr.fill()
    作用:对数组进行填充

//arr.fill(填充的东西, 开始位置, 结束位置);
let arr = [1,2,3,4];
arr.fill(0);//参数只有填充的东西则全部替换
console.log(arr);//[0,0,0,0]

let arr = [1,2,3,4];
arr.fill(0,2);//[1,2,0,0]
arr.fill(0,1,2);//[1,0,3,4]
console.log(arr);
//[开始的位置,结束的位置)左闭右开的区间
  • arr.includes()
    作用:与arr.indexOf相似,包含就返回true,不包含就返回false