285. 数组有哪些方法,区别和使用场景
  • valueof

    • 返回包装对象实例对应的原始类型的值
  • toString

    • 返回对应的字符串形式
  • push

    • 数组末尾添加元素,原数组会改变
  • pop

    • 删除数组末尾元素并返回删除的元素,原数组会发生改变
  • shift

    • 删除数组第一个元素并返回删除的元素,原数组会改变
  • unshift

    • 数组第一个元素前添加元素,返回添加元素后数组的长度,原数组会改变
  • join

    • 以指定参数作为分隔符,将所有数组成员连接为一个字符串返回。默认是逗号分隔。原数组不改变。
    • 如果数组成员为 undefined 或 null 或空位,会被转为空字符串
  • concat

    • 多个数组合并。a.concat(b) 将b添加到a末尾,返回新数组,原数组不改变
    • 如果数组成员包括对象,concat 方法返回当前数组的一个浅拷贝。所谓“浅拷贝”,指的是拷贝的是对象的引用
  • reverse

    • 反转数组,返回改变后的数组,原数组会改变。
  • slice

    • 提取数组的一部分,返回新数组,原数组不改变
  • splice

    • 删除数组一部分,可以在删除的位置添加新成员,返回被删除的元素。原数组不改变
    • arr.splice(start, count, addEle)

// 以下方法参数是传入一个函数

  • sort

    • 对数组成员排序,默认按字典顺序排序。原数组会改变
    • sort (fun) 可以接收一个函数,该函数返回值d大于0则由大到小排列,否者由小到大排列。如 [1,2,3,4,5].sort(() => -1)
  • map

    • arr.map((current,index,array) => {return ...})
    • 将数组的所有成员依次执行函数,然后把每一次执行结果(return)组成一个新数组返回,原数组不改变。
  • forEach

    • arr.forEach((current,index,array) => {...})
    • 对数组每个元素执行一次给定的函数,无返回值,原数组不改变
  • filter

    • arr.filter((current,index,array) => {return ...})
    • 过滤数组成员,满足条件(即对成员依次执行函数return true)的成员组成一个新数组返回,原数组不改变
  • some +

新文件夹
JSRUN前端笔记, 是针对前端工程师开放的一个笔记分享平台,是前端工程师记录重点、分享经验的一个笔记本。JSRUN前端采用的 MarkDown 语法 (极客专用语法), 这里属于IT工程师。