rest参数

ES6 引入 rest 参数,用于获取函数的实参,用来代替 arguments,作用与 arguments 类似。将接收的参数序列转换为一个数组对象。
用在函数形参中,语法格式:fn(a, b, …args),写在参数列表最后面
image.png

扩展运算符

扩展运算符(spread)也是三个点(…)。它好比 rest 参数的逆运算,将一个数组转为用逗号分隔的参数序列,对数组进行解包。可用在调用函数时,传递的实参,将一个数组转换为参数序列。
扩展运算符也可以将对象解包。
image.png
image.png
image.png

对象的解构赋值

对象解构

image.png
嵌套的对象,可以继续解构
image.png

数组解构

image.png

函数解构

image.png
image.png

变量交换

image.png

数组方法

every()

判断每个元素是否满足某个条件,返回的是布尔值

  1. let arr = [1,2,3,4,5,6,0]
  2. let res1 = arr.every(item=>item>0)//每个是否都大于0
  3. //true
  4. //如果有一项不满足就是false

some()

判断数组的元素是否有一些满足某个条件,只要发现有一个满足条件,就停止遍历
image.png
返回的ture

find()

查找数组元素满足某个条件的第一个值,只要找到了就停止,没有就返回undefi
image.png
返回的是数字5

findIndex()

查找数组元素满足某个条件的第一个索引,只要找到了就停止,没有找到就返回-1
image.png

forEach()

循环遍历,不能用break停止
image.png
不科学的结束方法
image.png

Array.from()

将伪数组转换位真数组
image.png

includes()

判断数组中是否包含某一个元素,返回布尔值
image.png

map()

创建一个新数组,这个新数组由原数组中的每个元素都调用一次提供的函数后的返回值组成
image.png

flat()

扁平化数组