首页 > 编程语言 > 详细

ES5与ES6中伪数组转数组

时间:2020-04-02 20:37:10      阅读:101      评论:0      收藏:0      [点我收藏+]

伪数组:

1、以索引方式存储数据

2、必须带有length属性

 

ES5(Array.prototype.slice

let args = [].slice.call(arguments) // collection

let imgs = [].slice.call(document.querySelectorAll(‘img‘)) // NodeList

 

ES6(Array.from或扩展运算符)

let args = Array.from(arguments)

let imgs = Array.from(document.querySelectorAll(‘img‘))

let arr = Array.from({ length: 5 })

 

扩展运算符(...)也可以将arguments对象NodeList对象转换成数组

let args = [...arguments]

let imgs = [...document.querySelectorAll(‘img‘)]

 

Array.from还可接收第二个参数:map函数,用来对数组的每个值做处理

如果map函数用到了this,Array.from还可以传入第三个参数:用来绑定this

 

Array.from()的另一个应用是,将字符串转为数组,然后返回字符串的长度。因为它能正确处理各种 Unicode 字符,可以避免 JavaScript 将大于\uFFFF的 Unicode 字符,算作两个字符的 bug。

ES5与ES6中伪数组转数组

原文:https://www.cnblogs.com/allenzhang-920/p/12616406.html

(1)
(1)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!