JS数组常用的方法
文章目录
1.push(增加)
push() 方法可向数组的末尾添加一个或多个元素,并返回新的长度。
var a = [1,2,3]
//1.push
a.push(3)
console.log("push方法");
console.log(a);
//[1, 2, 3, 3]
2.pop(删除)
pop() 方法用于删除并返回数组的最后一个元素。
//2.pop,此时a为[1, 2, 3, 3]
a.pop()
console.log("pop方法");
console.log(a);
//[1, 2, 3]
3.shift(删除)
shift() 方法用于把数组的第一个元素从其中删除,并返回第一个元素的值。
//3.shift,此时a为[1, 2, 3]
a.shift()
console.log("shift方法");
console.log(a);
//[2, 3]
4.unshift(添加)
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。
//4.unshift,此时a为[2, 3]
a.unshift(2,3)
console.log("unshift方法");
console.log(a);
//[2, 3, 2, 3]
5.sort(排序)
sort() 方法用于对数组的元素进行排序。
//5.sort,此时a为[2, 3, 2, 3]
a.sort()
console.log("sort方法");
console.log(a);
//[2, 2, 3, 3]
6.revere(排序)
reverse() 方法用于颠倒数组中元素的顺序。
//6.revere,此时a为[2, 2, 3, 3]
a.reverse()
console.log("reverse方法");
console.log(a);
//[3, 3, 2, 2]
7.splice(修改)
1.splice,此时a为[3, 3, 2, 2] 作用:删除、替换、删除
2.splice(index,howmany,item1,…,itemX)
3.index 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
4.howmany 必需。要删除的项目数量。如果设置为 0,则不会删除项目。
5.item1, …, itemX 可选。向数组添加的新项目。
//(1).删除
a.splice(0,1) //删除第一个
console.log("splice删除");
console.log(a);
//此时a [3, 2, 2]
// (2).替换 把索引为1的元素2替换成a
a.splice(1,1,'a')
//删除元素时,第二个参数我这里设为1,可理解为在索引为1的地方删除1个元素后用新的元素
//替换被删除的元素
console.log("splice替换");
console.log(a);
// 此时a [3, "a", 2]
// (3).添加,在3后添加4 ,即在索引为1的地方增加一个元素4
a.splice(1,0,4)
// //添加元素时,第二个参数为0,可理解为在索引为1的地方删除0个元素后用新的元素
//替换删除的元素
console.log("splice添加");
console.log(a);
// // 此时a [3, 4, "a", 2]
8.split(分割)
split() 方法用于把一个字符串分割成字符串数组。
stringObject.split(separator,howmany)
1.separator 必需。字符串或正则表达式,从该参数指定的地方分割 stringObject。
2.separator是一个空字符时,会返回一个单字符的数组
3.howmany 可选。该参数可指定返回的数组的最大长度。如果设置了该参数,
返回的子串不会多于这个参数指定的数组。如果没有设置该参数,整个字符串都会被分割,不考虑它的长度。
var b = "f-ff-gg-ll-kkk";
var c = b.split("-",3);
console.log(c);
//["f", "ff", "gg"]
9.slice(查找)
slice() 方法可从已有的数组中返回选定的元素。
arrayObject.slice(start,end)
1.start 必需。规定从何处开始选取。如果是负数,那么它规定从数组尾部开始算起的位置。也就是说,-1 指最后一个元素,-2 指倒数第二个元素,以此类推。
2.end 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。
2.1如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。
2.2如果这个参数是负数,那么它规定的是从数组尾部开始算起的元素。
var d = [1,2,3,4,5,6,7]
var e;
e = d.slice(0,1); //从下标0开始,截取1位
console.log(e); //[1]
e = d.slice(-4,-2); //截取-4到-2(不含-2)之间的元素
console.log(e);
//[4, 5]
e = d.slice(-4,5); //截取-4到5(不含5)之间的元素
console.log(e);
//[4, 5]
e = d.slice(1,-1); //截取1到-1(不含-1)之间的元素
console.log(e);
//[2, 3, 4, 5, 6]
10.join()(转化)
数组.join([string]):将数组以指定分隔符的形式分隔成字符串
let arr = [0,1,2,3,4,5],
newArr = arr.join('|');
console.log(newArr,arr)
//输出 0|1|2|3|4|5
11.检查数组中是否包含某一项
-
indexof()
/* 数组.indexOf(n,m):检测要检索这一项的值在数组中第一次出现的位置 @params: n:要检索的值 m:从索引m开始,不填则默认从0开始(非必填) @return: 要检索的这一项第一次出现的索引,未找到则返回-1 */ let arr = [0,1,2,3,4,5,'morning',7,'morning']; console.log(arr.indexOf('morning'))//=>6 console.log(arr.indexOf('morning',7))//=>8
-
lastIndexOf()
/* 数组.lastIndexOf():查找需要检索的元素在数组中最后一次出现的索引 @params: @return: 需要检索的元素最后一次出现的索引,没有则返回-1 */ let arr = [0,1,2,3,4,5,'morning',7,'morning']; console.log(arr.lastIndexOf('morning'))//=>8
-
incloudes
/* 数组.includes(n,m):验证数组是否包含某项元素 @parmas: n:需要查询的元素 m:从索引m开始向后检索,默认为0,如果为负数,且它大于数组长度则会重置为从 0 开始。 @return:若指定数组包含返回true否则返回flase */ let PersonA = { name: "Zack", age: 21 } let arr = [0, '1', PersonA, 'morning']; console.log(arr.includes(PersonA));//=> true let arr2 = [0, '1', PersonA, 'morning']; console.log(arr2 .includes(PersonA,-5));//=> true