扩展运算符 ...

将数组转化成用逗号分隔的参数序列

* 扩展运算符背后调用的是遍历器接口(Symbol.iterator),如果一个对象没有部署这个接口,就无法转换。

应用

1. 合并数组

2. 将字符串转化成数组

3. 与解构赋值结合(如果用于数组赋值,只能放在参数的最后一位,否则报错)

Array.from()

将类数组对象(array-like-object) 和 可遍历(iterable)对象转换成数组。

Array.from() lets you create Arrays from:

  • array-like objects (objects with a length property and indexed elements) or
  • iterable objects (objects where you can get its elements, such as Map and Set).

from: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/from

需要注意的是,类数组对象的属性必须是索引,而且要从0开始,因为转换的时候会根据属性的索引值来觉得产生的数组中元素的对应位置,如下:

首先定义了 length 属性为 3 (虽然对象的属性长度为 4),决定了产生的数组长度,然后根据源对象的属性作为索引,0 对应的元素为空,因此数组对应的位置是 undefined。

所谓类似数组的对象,本质特征只有一点,即必须有length属性。因此,任何有length属性的对象,都可以通过Array.from方法转为数组,而此时扩展运算符就无法转换。

使用 Array.from() 也可以很方便地将字符串转化成数组

Array.of()

将一组值转换成数组,总是返回参数值组成的数组。如果没有参数,就返回一个空数组。

find(value, index, arr)

找出第一个符合条件的数组成员,并返回,否则返回 undefined

findIndex()

找出第一个符合条件的数组成员的位置,并返回位置,否则返回 -1

includes()

检查数组中是否包含制定的值,可以代替 indexOf() 使用

参考:http://es6.ruanyifeng.com/#docs/array

最新文章

  1. 交通银行 Java Socket 服务启动 管理 WINDOWS 版
  2. CSS ID选择器(三)
  3. Interview How to Count Squares
  4. 【BOZJ 1901】Zju2112 Dynamic Rankings
  5. PHP配置图文教程
  6. 关于lucene的IndexSearcher单实例,对于索引的实时搜索
  7. hdu 4135 Co-prime(容斥)
  8. 玩转kindle paperwhite: 如何越狱,安装强大外挂软件koreader
  9. js获取最近几天的日期(转载)
  10. phantomjs初次认识
  11. Unity3D中的函数方法及解释
  12. ubuntu下 将证书导入java的cacerts证书库
  13. PG数据库——视图
  14. php 添加环境变量
  15. @property使用
  16. Spatial Sound Research
  17. MySQL一问一答
  18. C#学习笔记(十五):抽象方法、抽象类、多态和接口
  19. [C#学习笔记]类型对象指针和同步块索引
  20. Django之环境搭建

热门文章

  1. Java线程和多线程(九)——死锁
  2. P2347 砝码称重
  3. Spring MVC: 环境搭建并实现简易的HelloWorld
  4. Java工程师笔试题整理[校招篇]
  5. [B2B、B2C、C2C] 区别介绍
  6. VS2010使用NuGet程序包管理器
  7. Tensorflow多线程输入数据处理框架
  8. 走进Android系统
  9. 【转】Virtual DOM
  10. lintcode-60-搜索插入位置