fill( )实例方法:
fill()也是一个实例方法,它的作用是把数组进行填充,它接收三个参数,第一个参数是填充的变量,第二个是开始填充的位置,第三个是填充到的位置。
let arr=['陈羽凡','王宝强','贾乃亮','谢霆锋'];
arr.fill('汪峰', 1, 2);
console.log(arr); // ['陈羽凡','汪峰','贾乃亮','谢霆锋'];
数组的遍历
for…of循环:
第一眼看是去好像for-of和for-in 没有什么区别,但实际上是如此吗?
我们需要注意几点:
1.这是目前遍历数组最简洁和直接的语法;
2.它避免了for-in的所有缺陷;
3.与forEach()不一样,它支持break,continue和return。
4.for-in循环用于遍历对象属性,for-of循环用于遍历数据——比如数组中单值。
这种形式比ES5的for循环要简单而且高效。
let arr=['陈羽凡','王宝强','贾乃亮','谢霆锋'];
for (let item of arr){
console.log(item); // '陈羽凡' '王宝强' '贾乃亮''谢霆锋'
};
//只循环key
for(let k of arr.keys()){
console.log(k);//0 1 2 3
};
//for in 循环与for of循环的区别
for(let i in arr){
console.log(i)//结果是索引值 0 1 2 3
}
同时输出数组的内容和索引:我们用entries()这个实例方法,配合我们的for…of循环就可以同时输出内容和索引了。
let arr=['陈羽凡','王宝强','贾乃亮','谢霆锋'];
for (let [index,val] of arr.entries()){
console.log(index+':'+val);
}
entries( )实例方法:
entries()实例方式生成的是Iterator形式的数组,那这种形式的好处就是可以让我们在需要时用next()手动跳转到下一个值。
let arr=['陈羽凡','王宝强','贾乃亮'];
let list=arr.entries();
console.log(list.next().value); // [0, '陈羽凡']
console.log(list.next().value); // [0, '王宝强']
console.log(list.next().value); // [0, '贾乃亮']