Array.from()方法的使用

Array.from()的使用

这是ES6新增的的一个方法。

Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组。

1.部署了Iterator接口的对象,比如:Set,Map,Array。

2.类数组对象,就是一个对象必须有length属性,没有length,转出来的就是空数组

类数组对象

let obj = {
    '0': 'james',
    '1': 'kobe',
    'length': 2
}
let arr = Array.from(obj)
console.log(arr);   // ["james", "kobe"]

对象的属性为其他的字符串类型

let obj = {
    'name1': 'james',
    'name2': 'kobe',
    length: 2
}
let arr = Array.from(obj)
console.log(arr);   // [undefined, undefined]

没有length的对象

let obj = {
    '0': 'james',
    '1': 'kobe'
}
let arr = Array.from(obj)
console.log(arr);   // []

set, map, array

let arr = [1,2,3]
let set = new Set(arr);
let arr1 = Array.from(set)
console.log(arr1);   ///[1,2,3]

Array.from()还可以接受第二个参数

let arr = [1,2,3]
let set = new Set(arr);
let arr1 = Array.from(set, (item) => { return item + 1})
console.log(arr1);   //[2, 3, 4]

将字符串转化为数组

let str = 'james'
console.log(Array.from(str));  //["j", "a", "m", "e", "s"]

Array.from()的使用大致就是这样了,有错请指教。

原文地址:https://www.cnblogs.com/xyf724/p/13825123.html