数据类型--数组

  1. 新建数组的方式有两种,如:let arr = [];let arr = new Array();
  2. 对数组的遍历语法:for of
  3. 对数组的操作:
    arr.push(item)  //返回数组push后的长度
    arr.pop()  //移除并返回数组的最后一个元素
    arr.unshift(item)  //往数组的首位填充元素item,返回填充后的元素item
    arr.shift()  //移除数组的首位并且返回这个元素
  4. arr.toString()  //返回以“,”连接的字符串
  5. 不要用===比较数组,除非引用的是同一个数组否则都为false
  6. 0===[]  //true,[]会被转换为'',''会被转换为0
  7. 如果我们手动的更改数组的length属性,若设置的比原来短,则数组会截断length之后的元素并且不可恢复,设置的比原来长没有意义,只会使得长出来的部分都为undefined,并且length也改变。最好的清空一个数组的方式就是arr.length = 0
  8. 数组方法备忘单,如果有返回新的数组的函数,则原有函数不变:

    • 添加/删除元素:

      • push(...items) —— 向尾端添加元素,
      • pop() —— 从尾端提取一个元素,
      • shift() —— 从首端提取一个元素,
      • unshift(...items) —— 向首端添加元素,
      • splice(pos, deleteCount, ...items) —— 从 pos 开始删除 deleteCount 个元素,并插入 items
      • slice(start, end) —— 创建一个新数组,将从索引 start 到索引 end(但不包括 end)的元素复制进去;如果不带参数则创造一个当前数组的副本。
      • concat(...items) —— 返回一个新数组:复制当前数组的所有元素,并向其中添加 items。如果 items 中的任意一项是一个数组,那么就取其元素。
    • 搜索元素:

      • indexOf/lastIndexOf(item, pos) —— 从索引 pos 开始搜索 item,搜索到则返回该项的索引,否则返回 -1
      • includes(value) —— 如果数组有 value,则返回 true,否则返回 false
      • find/filter(func) —— 通过 func 过滤元素,返回使 func 返回 true 的第一个值/所有值。
      • findIndex 和 find 类似,但返回索引而不是值。
    • 遍历元素:

      • forEach(func) —— 对每个元素都调用 func,不返回任何内容。
    • 转换数组:

      • map(func) —— 根据对每个元素调用 func 的结果创建一个新数组。
      • sort(func) —— 对数组进行原位(in-place)排序,然后返回它。
      • reverse() —— 原位(in-place)反转数组,然后返回它。
      • split/join —— 将字符串转换为数组并返回。
      • reduce/reduceRight(func, initial) —— 通过对每个元素调用 func 计算数组上的单个值,并在调用之间传递中间结果。
    • 其他:

      • Array.isArray(arr) 检查 arr 是否是一个数组。
原文地址:https://www.cnblogs.com/jjbHD/p/14656239.html