数组扩展

来源:互联网 发布:局域网电话软件 编辑:程序博客网 时间:2024/05/24 00:07

ES6中数组扩展的这些方法应该算是比较实用的,逐一看下


Array.of可以讲几个变量转换返回一个数组,也可以是空数组,看下面例子

{    let arr = Array.of(3,4,7,9,11);    console.log('arr=',arr); // [3,4,7,9,11]    let empty=Array.of();    console.log('empty',empty);//[]}

Array.from将伪数组或者可遍历的对象转换为真正的数组,看下面

{    <p>12</p>    <p>23</p>    <p>34</p>    let p=document.querySelectorAll('p');    let pArr=Array.from(p);    pArr.forEach(function(item){        console.log(item.textContent);//12  23  34    });    console.log(Array.from([1,3,5],function(item){return item*2}));//2,6,10}
fill()方法,第一个是将所有的元素都改变为7;第二个有三个参数,第一个参数是要你替换的值,第二个是你要从第几个开始替换,第三个是第几个结束

{    console.log('fill-7',[1,'a',undefined].fill(7));//[7,7,7]    console.log('fill,pos',['a','b','c'].fill(7,1,2));//['a','7','c']}

keys()方法返回索引值  entries()返回索引值和value

{    for(let index of ['1','c','ks'].keys()){        console.log(index);//0 1 2    }    for(let [index,value] of ['1','c','ks'].entries()){        console.log(index,value);//0 1  1 c  2 ks    }}

copyWithin()替换数组中的指定元素,第一个参数是要从第几个替换,第二个是替换的内容的起始位,第三个是替换内容的截止位

{    console.log([1,2,3,4,5].copyWithin(0,3,4));//[4,2,3,4,5]}


find()方法用来查找满足条件的元素,但是只能找到第一个 findIndex()查找满足条件的元素的下标,同样也是一个

{    console.log([1,2,3,4,5,6].find(function(item){return item>3}));//4    console.log([1,2,3,4,5,6].findIndex(function(item){return item>3}));//3}
includes()方法用来判断数组是否包含某元素(包括NaN)

{    console.log('number',[1,2,NaN].includes(1));//true    console.log('number',[1,2,NaN].includes(NaN));//true}

原创粉丝点击