最全JS数组方法

79 阅读2分钟

拆分字符串

Consloe.log(Array.from(‘Matt’))//[‘M’,’a’,’t’,’t’]

Split()方法:

var str ="上海上海市闵行吴中路";

var splitAdd3 = str.split("");

console.log(splitAdd3) // ["上", "海", "上", "海", "市", "闵", "行", "吴", "中", "路"]

var str ="上海@上海市@闵行区@吴中路";

var splitAdd = str.split("@");

console.log(splitAdd) // ["上海", "上海市", "闵行区", "吴中路"]

[...m]扩展运算符:可以把字符串转换成数组

数组方法

push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。

pop() 方法数组最后一位元素删除并返回数组的最后一个元素。

shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。

sort() 方法对原列表进行排序

reverse() 方法颠倒数组中元素的顺序。

slice() 方法可从已有的数组中返回选定的元素。不会改变原数组。

Splice() 方法返回截取到底数组,会改变原数组。

flat()方法拉平嵌套的多维数组,数组扁平化。

数组的遍历

Foreach: 是数组方法,没有返回值return,不能使用break,continue来控制循环。

Filter:对数组元素进行条件筛选,返回一个数组(不会改变原数组)

map:返回一个数组,新数组的每一个元素都是执行回调函数之后的返回值(不会改变原数组)

some: 遍历如果有符合条件,返回值为true时。

every:遍历如果有一个不符合,返回值为false。

reduce:让数组中前项和后项做某种运算,比如累加,并返回运算结果。

find:在判断中一旦某个元素符合条件,立马跳出循环,返回这个当前符合元素。

For-of: 具有接口的数据都可以使用for of遍历,遍历的是value(例如:数组、Set、Map)

数组去重

1. 双循环去重

2. indexOf() :判断数组中是否包含某个值,存在则返回元素索引

3. lastIndexOf:从数组的末尾开始向前查找,存在则返回元素索引

4. Includes():判断数组是否包含某个特定元素,存在返回true

5. Set方法:[...new Set(arr)]

6. 使用filter:判断indexOf(item)是否等于index,等于就返回该元素。

7. reduce方法: 会对数组元素从左到右依次执行reducer函数

对象属性的遍历

For-in: 任意顺序遍历一个对象的可枚举属性,遍历的是key(不含Symbol属性)

Object.keys(obj: 返回一个数组,包括对象自身的可枚举属性(不含继承的和Symbol)