ES6中Array.from()方法有什么用
发表于:2025-11-17 作者:千家信息网编辑
千家信息网最后更新 2025年11月17日,小编给大家分享一下ES6中Array.from()方法有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Array.from()Array.from方法用于将两类对象转为真正的数
千家信息网最后更新 2025年11月17日ES6中Array.from()方法有什么用
小编给大家分享一下ES6中Array.from()方法有什么用,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
Array.from()
Array.from方法用于将两类对象转为真正的数组:类数组的对象( array-like object )和可遍历( iterable )的对象(包括 ES6 新增的数据结构 Set 和Map )。
let arrayLike = { '0': 'a', '1': 'b', '2': 'c', length: 3 }; // ES5 的写法 var arr1 = [].slice.call(arrayLike); // ['a', 'b', 'c'] // ES6 的写法 let arr2 = Array.from(arrayLike); // ['a', 'b', 'c'] // NodeList 对象 let ps = document.querySelectorAll('p'); Array.from(ps).forEach(function (p) { console.log(p); }); // arguments 对象 function foo() { var args = Array.from(arguments); // ... } //字符串转换为字符数组str.split('') Array.from('hello') // ['h', 'e', 'l', 'l', 'o'] let namesSet = new Set(['a', 'b']) Array.from(namesSet) // ['a', 'b'] Array.from({ length: 3 }); // [ undefined, undefined, undefined ]对于还没有部署该方法的浏览器,可以用Array.prototype.slice方法替代:
const toArray = (() => Array.from ? Array.from : obj => [].slice.call(obj))();
Array.from还可以接受第二个参数,作用类似于数组的map方法,用来对每个元素进行处理,将处理后的值放入返回的数组。
Array.from(arrayLike, x => x * x); // 等同于 Array.from(arrayLike).map(x => x * x); Array.from([1, 2, 3], (x) => x * x) // [1, 4, 9] //Array.from回调函数var arr1 = Array.from([1,2,3], function(item){ return item*item;});var arr2 = Array.from([1,2,3]).map(function(item){ return item*item;});var arr3 = Array.from([1,2,3], (item) => item*item);console.log(arr1); //[ 1, 4, 9 ]console.log(arr2); //[ 1, 4, 9 ]console.log(arr3); //[ 1, 4, 9 ]值得提醒的是,扩展运算符(...)也可以将某些数据结构转为数组。
// arguments 对象 function foo() { var args = [...arguments]; } // NodeList 对象 [...document.querySelectorAll('div')]看完了这篇文章,相信你对"ES6中Array.from()方法有什么用"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
对象
方法
数组
写法
字符
数据
数据结构
篇文章
结构
处理
作用
元素
函数
参数
字符串
完了
更多
浏览器
知识
行业
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
梦幻西游如何清除角色所在服务器
软件开发质量控制的案例
内蒙古集美网络技术
黄码数据库推送是什么意思
魔兽世界服务器状态.
查询把数据库宕机
云端服务器有什么功效
常用代理服务器
it网络安全销售
网络安全11月14日
警察网络技术科
我的世界在服务器当管理员
传奇4国际服怎么看服务器
bbu软件开发
农产品批发软件开发多少钱
网络安全员实习生实习内容
建立客户用户数据库
软件开发与制作的实训心得
医院共享陪护床软件开发
服务器防御转发会防护吗
京东保修服务器
服务器走丟了
金亚太网络技术怎么样
移动端软件开发的工具
法院从事网络安全管理
定远常见软件开发技术采购信息
泄露数据库下载
年终总结软件开发
压缩数据库没反应是为什么
微软服务器控制台