Array.from()的第一个参数是一个类数组对象,即任何可迭代的结构,或者一个有length属性和可索引属性的结构
1,字符串会被拆分为单字符数组

console.log(Array.from('matt'));
//['m','a','t','t']

2,可以使用from将集合和映射转换为一个新数组

const m = new Map().set(1,2).set(3,4);
const s = new Set().add(1).add(2).add(3).add(4);
console.log(Array.from(m));
//[[1,2],[3,4]]
console.log(Array.from(s));
//[1,2,3,4]

3,Array.from()对现有数组执行浅复制

const a1 = [1,2,3,4];
const a2 = Array.from(a1);console.log(a1);//[1,2,3,4]
alert(a1 === a2);//false

4,可以使用任何可迭代对象

const iter = {
*Symbol.iterator](){
yield 1;
yield 2;
yield 3;
yield 4;
}
};
console.log(Array.from(iter));//[1,2,3,4]

5,arguments对象可以被轻松地转换为数组

function getArgsArray(){
return Array.from(arguments);
}
console.log(getArgsArray(1,2,3,4));//[1,2,3,4]

6,from()也能转换带有必要属性的自定义对象

const arryaLikeObject ={
0:1,
1:2,
2:3,
3:4,
length:4
};
console.log(Array.from(arrayLikeObject));
//[1,2,3,4]

7,from方法可以接收第二个可选得映射函数参数,还可以接收第3个参数,用于指定映射函数中this的值

const a1 = [1,2,3,4];
const a2 = Array.from(a1,x =>x**2);
const a3 = Array.from(a1,function(x){return x**this.exponent},{exponent:2});
console.log(a2);
//[1,4,9,16]
console.log(a3);
//[1,4,9,16]

array方法之from方法相关推荐

  1. ruby array_Ruby中带有示例的Array.zip()方法

    ruby array Array.zip()方法 (Array.zip() Method) In this article, we will study about Array.zip() Metho ...

  2. array.slice_Ruby中带有示例的Array.slice()方法

    array.slice Array.slice()方法 (Array.slice() Method) In this article, we will study about Array.slice( ...

  3. ruby array_Ruby中带有示例的Array.fill()方法(1)

    ruby array Array.fill()方法 (Array.fill() Method) In this article, we will study about Array.fill() me ...

  4. repeated_Ruby中带有示例的Array.repeated_combination()方法

    repeated Array.repeated_combination()方法 (Array.repeated_combination() Method) In this article, we wi ...

  5. ruby array_Ruby中带有示例的Array.index()方法

    ruby array Array.index()方法 (Array.index() Method) In this article, we will study about Array.index() ...

  6. ruby array_Ruby中带有示例的Array.fill()方法(3)

    ruby array Array.fill()方法 (Array.fill() Method) In this article, we will study about Array.fill() me ...

  7. array.unshift_Ruby中带有示例的Array.unshift()方法

    array.unshift Array.unshift()方法 (Array.unshift() Method) In this article, we will study about Array. ...

  8. js中的数组Array定义与sort方法使用示例

    js中的数组Array定义与sort方法使用示例 Array的定义及sort方法使用示例 Array数组相当于java中的ArrayList  定义方法:  1:使用new Array(5  )创建数 ...

  9. Array.prototype.slice.call()方法详解

    在很多时候经常看到Array.prototype.slice.call()方法,比如Array.prototype.slice.call(arguments),下面讲一下其原理: 1.基本讲解 1.在 ...

  10. JS高程5.引用类型(6)Array类型的位置方法,迭代方法,归并方法

    一.位置方法 ECMAScript5为数组实例添加了两个位置:indexOf()和 lastIndexOf().这两个方法接收两个参数:要查找的项和(可选的)表示查找起点位置的索引(如在数组[7,8, ...

最新文章

  1. 微生物基因组分类数据库GTDB和软件GTDB-Tk
  2. 有这么一群人,他们通过AI撬动世界!
  3. Django 无法加载静态文件(js,css,image)解决办法
  4. 需求分析中适应性怎么写_商业计划书中的市场分析怎么写,这样才完整!
  5. java前端长连接框架_Java如何实现长连接
  6. webpack4 filemanager-webpack-plugin 打zip包失败问题
  7. MacBook运行C++,不用安装任何软件
  8. 转(ASP.NET页面缓存)
  9. C# Xml序列化Dictionary
  10. 美团旅行数据质量监管平台实践
  11. Linux 执行kettle ktr脚本
  12. 织梦搬家数据库导入失败怎么办?
  13. 限时游戏开发大赛——Ludum Dare介绍
  14. vb怎样访问网络服务器的access数据库
  15. 解决高德地图在线API不支持对应的方法回调返回结果的问题
  16. 【情报百科】如何利用光影定位美国军事基地?
  17. C语言进阶-第39讲:银行储蓄系统(二进制版)开发
  18. Weblogic 用户名密码写入配置文件的方法
  19. Java项目:基于jsp+ssm驾校预约管理系统(计算机毕业设计)
  20. 在ArcEngine中的点元素如何使用其本身提供的各种符号特征

热门文章

  1. MySQL 测试数据快速生成
  2. tms320c6c语言代码微盘,TMS320C6
  3. message提示框的三种显示方式
  4. Java基础教程(全代码解析)
  5. 使用C#为SAP2000开发第一个插件
  6. 2022年中级职称评定条件及流程
  7. Halcon图像采集助手提示找不到指定DLL文件
  8. Arduino之DS1307模块的使用记录
  9. Keras-模型编译
  10. matlab规定形式化简多项式,如何用matlab化简多项式