从数组常用方法写起~
引言:前端小白一枚,此文集用于个人前端知识点总结,记录实际项目开发过程中踩过的抗。
一点一滴,汇聚成河!
数组常用方法分为:访问方法、迭代方法和修改器方法三种!以下对项目开发过程中常用的方法总结,希望可以给自己和大家一个清晰的思路!
一、数组访问方法(不改变原数组)
Array.prototype.concat():多数组合并。将新数组的成员添加到原数组的尾部,返回新数组。
Array.prototype.concat()Array.prototype.join():所有的数组元素被转换成字符串,再用一个分隔符(参数)将这些字符串连接起来。无参数时默认用逗号分隔。
Array.prototype.join()延伸:字符串转数组方法为 String.prototype.split()
Array.prototype.slice():抽取当前数组中的一段元素组合成一个新组。
Array.prototype.slice()Array.prototype.toString():返回一个由所有数组元素组合而成的字符串(逗号分隔)。
Array.prototype.toString()Array.prototype.toString(): Array对象覆盖了Object的 toString 方法 。 toString() 方法是通用的,可被用于任何对象。只能以逗号分隔。
Array.prototype.join(): 仅限于数组转字符串,分割方式更丰富。
Array.prototype.indexOf():返回数组中第一个与指定值相等的元素的索引,如果找不到这样的元素,则返回 -1。
Array.prototype.indexOf()二、数组迭代方法(不改变原数组)
在下面的几种常用遍历方法中,都需要指定一个回调函数作为参数。( 在每一个数组元素都分别执行完回调函数之前,数组的length属性会被缓存在某个地方。 使用 遍历方法处理数组时,数组元素的范围是在 callback 方法第一次调用之前就已经确定了。在 遍历方法执行的过程中:原数组中新增加和被删除的元素将不会被 callback 访问到;若已经存在的元素被修改了,则它们传递到 callback 的值是 map 方法遍历到它们的那一时刻的值。 )
Array.prototype.forEach():为数组中的每个元素执行一次回调函数。
Array.prototype.forEach()【析】当到达包含值"two"的项时,整个数组的第一个项被移除了,这导致所有剩下的项上移一个位置。因为元素 "four"现在在数组更前的位置,"three"会被跳过。
forEach() 为每个数组元素执行callback函数;不像 map() 或者 reduce(),它总是返回 undefined 值,并且不可链式调用。
Array.prototype.map():返回一个由回调函数的返回值组成的新数组。(ES6)
Array.prototype.map()Array.prototype.filter():将所有在过滤函数中返回 true 的数组元素放进一个新数组中并返回。如果过滤函数中没有返回 true 的元素,则返回空数组。
Array.prototype.filter()Array.prototype.find() :找到第一个满足测试函数的元素并返回那个元素的值,如果找不到,则返回 undefined。
Array.prototype.findIndex() :找到第一个满足测试函数的元素并返回那个元素的索引,如果找不到,则返回 -1。
三、数组修改器方法(改变原数组)
Array.prototype.splice():在任意的位置给数组添加或删除任意个元素。返回由被删除的元素组成的一个数组。
Array.prototype.splice()Array.prototype.sort([compareFunction]):对数组元素进行排序,并返回当前数组。如果没有指明 compareFunction,默认按照转换为的字符串的各个字符的Unicode位点进行排序。
Array.prototype.sort()Array.prototype.reverse():颠倒数组中元素的排列顺序。
Array.prototype.pop():删除数组的最后一个元素,并返回这个元素。
Array.prototype.push():在数组的末尾增加一个或多个元素,并返回数组的新长度。
Array.prototype.shift():删除数组的第一个元素,并返回这个元素。
Array.prototype.unshift():在数组的开头增加一个或多个元素,并返回数组的新长度。
结语: 不定时修改更新…… 如有错误,欢迎评论区评论指正,不胜感激!