js 数组方法大全

2019-07-05  本文已影响0人  一代码农1970

数组方法有很多,不是所有的方法,都经常用到的,经常不用难免会忘记,今天整理一下,回忆一下,也方便以后自己开发查询api。

一、改变原数组的方法9个

ES5:
pop() shift() push() unshift() reverse() splice() sort()
ES6:
copyWithin() fill()

pop() 删除数组中的最后的一个元素,返回 被删除的元素

let arr = [1,2,3];
let returnedValue= arr.pop(); 
// arr [1,2]  returnedValue 3

shift() 删除数组的第一个元素 返回 被删除的元素

let arr = [1,2,3];
let returnedValue= arr.shift(); 
// arr [2,3]  returnedValue 1

push() 向数组的末尾添加一个或多个元素 返回 新数组长度

let arr = [1,2,3];
let returnedValue= arr.push('a'); 
// arr [1,2,3,'a']  returnedValue 4

unshift() 向数组开头添加一个或多个元素 返回 新数组长度

let arr = [1,2,3];
let returnedValue= arr.unshift('a'); 
// arr ['a',1,2,3]  returnedValue 4

reverse() 颠倒数组中元素的顺序 返回 返回当前数组

let arr = [1,2,3];
let returnedValue= arr.reverse(); 
// arr [3,2,1]  returnedValue  [3,2,1]

splice() 添加/删除数组元素 返回 数组,被删除的元素数组

从数组中添加/删除项目,然后返回被删除的项目
语法: array.splice(开始位置,删除多少个,...添加的元素)

let arr = [1,2,3];
let returnedValue= arr.splice(0,3,'a','b'); // 从index0开始删除,删除3个,最后添加
// arr ['a','b']  returnedValue  [1,2,3]

sort() 数组排序 返回当前数组

let arr = [3,2,1];
let returnedValue= arr.sort(); 
// arr [1,2,3]  returnedValue  [1,2,3]

ES6: copyWithin() 指定位置的成员复制到其他位置 返回当前数组

copyWithin(被替换位的开始 target,被复制的开始位置 start,被复制的结束位置 end)
target(必需):从该位置开始替换数据。如果为负值,表示倒数。
start(可选):从该位置开始读取数据,默认为 0。如果为负值,表示倒数。
end(可选):到该位置前停止读取数据,默认等于数组长度。使用负数可从数组结尾处规定位置。

let arr = [1,2,3,'a'];
let returnedValue= arr.copyWithin(0,2,3); 
// arr [3, 2, 3, "a"]  returnedValue  [3, 2, 3, "a"]

ES6: fill() 填充数组

fill(填充的元素,起始位置,结束位置)

let arr = [1,2,3];
let returnedValue= arr.fill("a",1,2); 
// arr [1, "a", 3]  returnedValue  [1, "a", 3 ]

二、不改变原数组的方法8个

ES5:
join() toLocateString() toString() slice() cancat() indexOf() lastIndexOf()
ES7:
includes()

join() 数组转字符串 返回字符串

join(数组元素连接符默认值 , )

let arr = [1,2,3];
let returnedValue= arr.join(); 
// arr [1,2,3]  returnedValue  '1,2,3'

toLocaleString() 数组转字符串 返回字符串

返回一个表示数组元素的字符串。该字符串由数组中的每个元素的 toLocaleString() 返回值经调用 join() 方法连接(由逗号隔开)组成。

let arr = [1,2,3,{name:'b-boy'}];
let returnedValue= arr.toLocaleString(); 
// arr  [1,2,3,{name:'b-boy'}]  returnedValue  '1,2,3,[object Object]'

toString() 数组转字符串 返回字符串

let arr = [1,2,3];
let returnedValue= arr.toString(); 
// arr [1,2,3]  returnedValue  '1,2,3'

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

slice(开始位置,结束位置) 不包含结束位置

let arr = [1,2,3];
let returnedValue= arr.slice(0,2); 
// arr [1,2,3]  returnedValue  [1,2] 

concat() 方法用于连接两个或多个数组 返回合并后的数组

let arr = [1,2,3];
let returnedValue= ['a','b'].concat(arr); 
// arr [1,2,3]  returnedValue  ['a','b,1,2,3] 

indexOf() 查找数组是否存在某个元素,返回下标 不存在返回 -1

let arr = [1,2,3,'a'];
let returnedValue=arr.indexOf('a'); 
// arr  [1,2,3,'a']  returnedValue 3

lastIndexOf() 查找指定元素在数组中的最后一个位置 不存在 返回 -1

let arr = [1,'a',2,3,'a'];
let returnedValue=arr.lastIndexOf('a'); 
// arr [1,'a',2,3,'a']  returnedValue 4

ES7 includes() 查找数组是否包含某个元素 返回布尔

let arr = [1,'a',2,3,'a'];
let returnedValue=arr.includes('a'); 
// arr   [1,'a',2,3,'a']  returnedValue true

end。

上一篇 下一篇

猜你喜欢

热点阅读