1. push()方法
- 作用:在数组的尾部追加数组元素
- 格式:arr.push(value1, value2, value3...)
- 注意:
- 返回值是修改后数组的长度
- 原数组被改变
2. pop()方法
- 作用:删除数组尾部的数组元素(一次只能删除一个)
- 格式:arr.pop(value1)
- 注意:
- 返回值是被删除的数组元素
- 原数组被改变
3. unshift()方法
- 作用:在数组的头部添加元素
- 格式:arr.unshift(value1, value2, value3...)
- 注意:
- 返回值是修改后数组的长度
- 原数组被改变
4. shift()方法
- 作用:删除数组头部的元素(一次只能删除一个)
- 格式:arr.shift(value1)
- 注意:
- 返回值是被删除的数组元素
- 原数组被改变
5. concat()方法
- 作用:实现两个或多个数组的拼接
- 格式:arr.concat(arr2,arr3...)
- 注意:
- 返回值是拼接后的新的数组
- 原数组不受影响
- concat方法的参数可以是一个数组,也可以是数值,也可以是多个数组,中间用逗号分隔
6. join()方法
- 作用:将数组的每个元素以指定的字符连接形成新字符串返回
- 格式:arr.join(分割符)
- 注意:
- 返回值是数组元素拼接成的字符串
- 参数可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符
- 原数组不受影响
7. slice()方法
- 作用:从已有的数组中返回选定的元素。
- 格式:arr.slice(begin,end); begin表示开始位置的下标,end表示结束位置的下标
- 注意:
- 返回值为截取出来的新的数组
- 原数组不受影响
- 在截取时包含begin,但是不包含end,即含头不含尾
- 如果省略end,那么表示从begin一直截取到最后
- 如果begin和end同时省略,那么表示复制数组(生成一个独立的新的数组)
- 参数可以是负数,如果是负数,那么-1表示数组中的最后一个元素
- 如果第二个参数,即end的值大于等于数组的长度,那么表示从begin一直截取到数组的最后
8. splice()方法
- 作用:对数组进行增、删、改操作
- 格式:arr.splice(index,howmany,item1,.....,itemX);
参数 | 描述 | index | 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。 | howmany | 必需。要删除的项目数量。如果设置为 0,则不会删除项目。 | item1, ..., itemX | 可选。向数组添加的新项目。 |
---|
- 注意:
- 增的格式:arr.splice(下标,0,要插入的值);返回值为一个空数组;
- 删的格式:arr.splice(下标,个数);返回值为被删除的数组元素所形成的新的数组,注意delete删除的元素的值,而splice删除的是值和空间;
- 改的格式:arr.splice(下标,个数,新的值);返回值为被修改的元素所形成的新的数组
9. toString()方法
- 作用:数组转换为字符串,并返回结果
- 格式:arr.toString();
- 注意:
- 原数组不受影响
- 数组中的元素之间用逗号分隔。
10. reverse()方法
- 作用:颠倒数组中元素的顺序
- 格式:arr.reverse();
- 注意:
- 原数组被改变
- 数组中的元素之间用逗号分隔。
11. sort()方法
- 作用:对数组的元素进行排序
- 格式:arr.sort(sortby); 参数可选。规定排序顺序。必须是函数。
- 注意:
- 函数的返回值为原数组
- 如果调用该方法时没有使用参数,将按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。要实现这一点,首先应把数组的元素都转换成字符串(如有必要),以便进行比较。
- 升序: arr.sort(function(a, b) { return a – b; });
- 降序: arr.sort(function(a, b) { return b – a; });
12. includes()方法
- 作用:判断一个数组是否包含一个指定的值,如果是返回 true,否则false。
- 格式:arr.includes(value);
- 注意:
- 原数组不受影响
13. find()方法
- 作用:返回满足提供的测试函数的数组中第一个元素的值
var num = [1, 30, 39, 29, 10, 13];
var val = num.find(myFunc);
function myFunc(element) {
return element >= 18;
}
- 注意:
- 原数组不受影响
- 为数组中的每个元素都调用一次函数执行:当数组中的元素在测试条件时返回 true 时, find() 返回符合条件的元素,之后的值不会再调用执行函数。如果没有符合条件的元素返回 undefined
- find() 对于空数组,函数是不会执行的。
14. every()方法
- 作用:检测数组所有元素是否都符合指定条件(通过函数提供)。
var num = [1, 30, 39, 29, 10, 13];
var val = num.every(myFunc);
function myFunc(element) {
return element >= 18;
}
- 注意:
- 原数组不受影响
- 指定函数检测数组中的所有元素:如果数组中检测到有一个元素不满足,则整个表达式返回 false ,且剩余的元素不会再进行检测。如果所有元素都满足条件,则返回 true。
- 不会对空数组进行检测
15. some()方法
- 作用:检测数组中的元素是否满足指定条件(函数提供)。
var num = [1, 30, 39, 29, 10, 13];
var val = num.every(myFunc);
function myFunc(element) {
return element >= 18;
}
- 注意:
- 原数组不受影响
- 指定函数检测数组中的所有元素:如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。如果没有满足条件的元素,则返回false。
- 不会对空数组进行检测
16. forEach()方法
- 作用:对数组进行遍历循环,对数组中的每一项运行给定函数
- arr.forEach(function(item,index,items){})
- 参数1:遍历的数组内容item
- 参数2:对应的数组索引 index
- 参数3:数组本身items
- 注意:
- 没有返回值
- 不会对空数组进行检测
17. map()方法
- 作用:返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值
- arr.map(function(item,index,items){})
- 参数1:遍历的数组内容item
- 参数2:对应的数组索引 index
- 参数3:数组本身items
- 注意:
- 原数组不受影响
- 不会对空数组进行检测
18. filter()方法
- 作用:创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
var num = [1, 30, 39, 29, 10, 13];
var val = num.filter(myFunc);
function myFunc(element) {
return element >= 18;
}
- 注意:
- 原数组不受影响
- 不会对空数组进行检测
19. reduce()方法
- 作用:接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
- 格式: arr.reduce(callback,[initialValue])
- callback (执行数组中每个值的函数,包含四个参数)
- 1、previousValue (上一次调用回调返回的值,或者是提供的初始值(initialValue))
- 2、currentValue (数组中当前被处理的元素)
- 3、index (当前元素在数组中的索引)
- 4、array (调用 reduce 的数组)
- initialValue (作为第一次调用 callback 的第一个参数。)
- callback (执行数组中每个值的函数,包含四个参数)
- 实例
var arr = [1, 2, 3, 4];
var sum = arr.reduce(function(prev, cur, index, arr) {
console.log(prev, cur, index);
return prev + cur;
})
console.log(arr, sum);
// 1 2 1
// 3 3 2
// 6 4 3
// [1, 2, 3, 4] 10
- 注意:
- 原数组不受影响
- 作为一个高阶函数,用于函数的 compose。
- 不会对空数组进行检测
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!