ES6 -数组的扩展

1.Array.from

把类数组(获取一组元素、arguments)对象转成数组

只要具备length,大多都可以转化

 
//3种方法 转成数组
let ali=document.querySelectorAll('li');
console.log(ali);//NodeList(3) [li, li, li]

let ali1=[...ali];
console.log(ali1);//[li, li, li]

let ali2=Array.from(ali);
ali2.pop();
console.log(ali2);//[li, li]

let ali3=Array.prototype.slice.call(ali);
console.log(ali3);//[li, li, li]

// 字符串转数组
let str='sasdsd';

let arr1=str.split('');
console.log(arr1);//["s", "a", "s", "d", "s", "d"]

let arr2=Array.from(str);
console.log(arr2);//["s", "a", "s", "d", "s", "d"]

// 类数组转数组
let obj={
    0:'a',
    1:'b',
    2:'c',
    length:2
}
let arr=Array.from(obj);
console.log(arr);//["a", "b"]

2.Array.of() 把一组值转成数组

let arr=Array.of('apple','sds','aaa');
console.log(arr); // ["apple", "sds", "aaa"]

3.arr.find():查找,找出第一个符合条件的数组成员,如果没有找到返回undefined

4.arr.findIndex():找的是位置,找出第一个符合条件的元素的位置,没找到返回-1

let arr=[1,3,5,6,9];
var res=arr.find((val,index,arr)=>{
    return val>5
});
console.log(res);//6

var res1=arr.findIndex((val,index,arr)=>{
    return val>5
});
console.log(res1);//3

5.arr.fill(填充的内容,开始位置,结束位置) 填充 ,返回填充后的数组

let arr=[1,3,5,6,9];
arr.fill('aa',1,3);
console.log(arr);//1, "aa", "aa", 6, 9]

6.includes 包含,返回true或false

let arr=['a','b','c'];
let res=arr.includes('b');
console.log(res);//true

 

 
 
posted @ 2018-08-24 11:02  yuesu  阅读(144)  评论(0编辑  收藏  举报