下面就为大家详细介绍JavaScript中数组对象的自带方法。
1. 增加、删除、修改元素
push、pop、shift、unshift方法
- push方法:在数组的末尾插入一个或多个元素,并返回数组新的长度。
- pop方法:删除数组的最后一个元素,并返回该元素的值。
- shift方法:删除数组的第一个元素,并返回该元素的值。
- unshift方法:在数组的开头插入一个或多个元素,并返回数组新的长度。
示例:
const arr1 = [1, 2, 3];
arr1.push(4);
console.log(arr1); // [1, 2, 3, 4]
arr1.pop();
console.log(arr1); // [1, 2, 3]
arr1.shift();
console.log(arr1); // [2, 3]
arr1.unshift(0);
console.log(arr1); // [0, 2, 3]
splice方法
- splice方法:向/从数组中添加/删除项目,然后返回被删除的项目,该方法会改变原始数组。
语法:array.splice(index, howmany, item1, ....., itemX)
参数解释:
- index:必需。规定从何处添加/删除元素。是起始位置,即:从0开始计数的数组下标。
- howmany:必需。要删除的元素个数。如果设置为0,则不会删除任何元素。如果没有设置该参数,则会删除从 index
开始的所有元素。
- item1,...,itemX:可选。要添加到数组的新元素。
示例:
const arr2 = [1, 2, 3];
arr2.splice(1, 1); // 删除从数组下标为1的元素开始,删除1个元素
console.log(arr2); // [1, 3]
arr2.splice(1, 0, 2); // 添加元素2到数组下标为1的位置上
console.log(arr2); // [1, 2, 3]
2. 数组的遍历
forEach方法
- forEach方法:对数组中的每个元素执行一次给定的函数。
语法:array.forEach(function(currentValue, index, array), thisValue)
参数解释:
- function(currentValue, index, array):必需。函数,数组中的每个元素都会执行该函数。
- currentValue:必需。当前元素的值。
- index:可选。当前元素的下标。
- array:可选。当前元素所在的数组。
- thisValue:可选。对象作为该执行回调时使用,传递给函数,用作 "this" 的值。
示例:
const arr3 = [1, 2, 3];
arr3.forEach(function (item, index, arr) {
console.log(item, index, arr);
});
/*
输出:
1 0 [1, 2, 3]
2 1 [1, 2, 3]
3 2 [1, 2, 3]
*/
map方法
- map方法:返回一个新数组,数组中的每个元素都执行提供的函数,生成新数组中的对应元素。
语法:array.map(function(currentValue, index, array), thisValue)
参数解释:
- function(currentValue, index, array):必需。函数,数组中的每个元素都会执行该函数。
- currentValue:必需。当前元素的值。
- index:可选。当前元素的下标。
- array:可选。当前元素所在的数组。
- thisValue:可选。对象作为该执行回调时使用,传递给函数,用作 "this" 的值。
示例:
const arr4 = [1, 2, 3];
const newArr = arr4.map(function (item) {
return item + 1;
});
console.log(newArr); // [2, 3, 4]
3. 数组排序和查找
sort方法
- sort方法:对数组元素进行排序,并返回排序后的数组。默认排序顺序是根据字符串Unicode码。
语法:array.sort(sortfunction)
参数解释:
- sortfunction:可选。用于指定排序顺序的比较函数。
示例:
const arr5 = [10, 5, 8, 1, 7];
arr5.sort(function (a, b) {
return b - a;
});
console.log(arr5); // [10, 8, 7, 5, 1]
indexOf、lastIndexOf方法
- indexOf方法:返回第一个与指定值相等的数组元素的下标,如果找不到则返回-1。
- lastIndexOf方法:返回在数组中查找到的指定值的最后一个元素的下标,如果没有找到则返回-1。
语法:array.indexOf(searchValue, fromIndex), array.lastIndexOf(searchValue, fromIndex)
参数解释:
- searchValue:必需。要查找的元素值。
- fromIndex:可选。起始查找位置。从上次的下标位置向后查找,当未设置fromIndex或fromIndex为0时,将从起点处开始查找。如果在数组范围之外开始查找,则返回 -1。
示例:
const arr6 = [1,2,3,2,1];
console.log(arr6.indexOf(2)); // 1
console.log(arr6.lastIndexOf(2)); // 3
以上就是自带的数组方法的一些介绍和应用示例。还有很多其它自带的高级方法,大家可以自己去查阅资料深入学习。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JavaScript中数组对象的那些自带方法介绍 - Python技术站