Array.from的几个用法

Posted on   猫头唔食鱼  阅读(637)  评论(0编辑  收藏  举报
Array.from的一个特性:所有具有length属性的对象,并且key是数字,都能被Array.from转为数组
  // 用法一:对象转数组
        // example 1:
        let obj = {0:'a',1:'b',2:'c',length:3}
       console.log( Array.from(obj) );// [a,b,c]
// example 2: 这个写法和展开操作符是一样的,为了简便,还是用展开操作符吧
        let div = document.querySelectorAll('div')
        console.log(Array.from(div));
        let divCopy = [...div]
        console.log(divCopy);
        // 用法二:set转数组,使用展开操作符也是一样
        let set  = new Set([1,2,3])
        console.log(Array.from(set));
        let a = [1,2,3]
        let set2 = new Set(...[a])
        console.log([...set2]);
        // 用法三:Array.from的第二个参数,可以遍历数组,相当于map和forEach
        let b = [1,2,3]
        console.log(Array.from(b,v=>v+2)); // [3,4,5]
        Array.from(b).forEach(v=>console.log(v+2))
        Array.from(b).map(v=>console.log(v+2))

Array.from和Array.of对比

Array.of是把一组值转换为数组

 Array.of(1,2,3) // [1,2,3]

 

 

编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
点击右上角即可分享
微信分享提示