1.push() 从数组末端添加元素;返回新数组长度;
可同时添加多个元素,改变原数组;
Array.push(item);
2.pop() 删除数组最后一个元素;返回删除元素 ;改变原数组;
Array.pop();
3.unshift() 从数组前端添加元素;返回新数组长度 ;改变原数组;
Array.unshift(item);
4.shift() 删除数组第一个元素;返回删除元素 ;改变原数组;
Array.unshift();
5.includes() 数组是否包含一个指定的值;包含返回true,否则false;
Array.includes(item);
6.indexOf(item,开始索引); 检查数组中item的位置,返回item第一次出现的位置,
如果不存在返回 -1;
Array.indexOf(item,开始索引);
参数二:开始索引位置可以指定,从指定索引位置向后查找;不设置,默认从索引为0开始;
7.lastIndexOf() 方法可返回一个指定的元素在数组中最后出现的位置,从该字符串的后面向前查找。
如果要检索的元素没有出现,则该方法返回 -1。
array.lastIndexOf(item,start);
8.join('分隔符') 把数组中的所有元素转换一个字符串。元素是通过指定的分隔符进行分隔的。
分隔符如果不加,省略该分隔符参数,则使用逗号作为分隔符。
9.sort() 方法用于对数组的元素进行排序。改变原数组;
排序顺序可以是字母或数字,并按升序或降序。
默认排序顺序为按字母升序。
注意:当数字是按字母顺序排列时"40"将排在"5"前面。
使用数字排序,你必须通过一个函数作为参数来调用。
函数指定数字是按照升序还是降序排列。
一般:Array.sort(function(a,z){ return a - z});表示升序;
var arr7 = [6, 22, 3, 1, 55]
arr7.sort(az);
function az(a, z) {
return a - z;
}
console.log(arr7);
//倒序
arr7.sort(za);
function za(a, z) {
return z - a;
}
console.log(arr7);
10.reverse() ; 数组元素翻转;改变原数组;
11.slice()方法可从已有的数组中返回选定的元素。不改变原数组;
可提取字符串的某个部分,并以新的字符串返回被提取的部分。
array.slice(start, end);以数组返回提取的元素;
ES6新增方法:
1.tostring 方法可把数组转换为字符串,并返回结果;俗称去中括号;
注意: 数组中的元素之间用逗号分隔。
2.find(function(item,index,array){
return item > 9;
)
item 是指每一个元素
index 是指每一个元素对应的索引
array 原数组
return 当条件成立时,返回第一个符合条件的值
var person = [{
name: 'aa',
age: 18
}, {
name: 'bb',
age: 19
}, {
name: 'cc',
age: 20
}, {
name: 'dd',
age: 21
}]
var res = person.find(function (item, index, array) {
console.log(item, index, array);
return item.age > 19;
})
console.log(res); //只返回第一个符合要求的元素
3.filter(function(item,index,array){ //检测数值元素,并返回符合条件所有元素的数组。
return item > 9;
)
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
注意: filter() 不会对空数组进行检测。
注意: filter() 不会改变原始数组。
4.every() 判断每一项是否满足判断条件,如果全部满足,返回true,有一个不满足返回false,不在继续检测
注意:every() 不会对空数组进行检测;
注意 :every() 不会改变原始数组。
var person = [{
name: 'aa',
age: 18
}, {
name: 'bb',
age: 19
}, {
name: 'cc',
age: 20
}, {
name: 'dd',
age: 21
}]
var res = person.every(function (item) {
return item.age >= 18;
})
console.log(res);
console.log(res ? '全部成年' : '有未成年');
5.some()是只要有一个元素满足条件返回 true,全部元素都不满足返回false;
some() 方法用于检测数组中的元素是否满足指定条件( 函数提供)。
some() 方法会依次执行数组的每个元素
如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。
如果没有满足条件的元素,则返回false。
6.reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值。
语法:array.reduce(function(acc,currentValue,currentIndex,array){
// return acc+ currentValue;
// },initialValue)
//形参表示意思:
// acc表示初始值,用于计算返回值;(必选)
//currentValue 表示当前值 (必选)
///currentIndex 表示当前索引(可选)
//array 表示当前的数组 (可选)
// initialValue表示 传递给函数的初始值(可选),不写默认是total = 0
7.map()方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。
一般对数组的每一个元素进行相同的运算时会比较方便;
var res = arr1.map(function (item) {
return item * 10 + 'px'
})
console.log(res);
8.forEach()方法:数组每个元素都执行一次回调函数,遍历数组的每一个元素;
var sum = 0;
var res = arr1.forEach(function (item, index, arr) {
console.log(item);
sum += item;
})
console.log(sum);
9.findIndex() 返回第一个满足条件的值的 索引
let arr2 = [1, 3, 5, 7];
var res = arr2.findIndex(function (item) {
return item > 3;
})
console.log(res); //--> 2
10.from() 方法用于通过拥有 length 属性的对象或可迭代的对象来返回一个数组。
如果对象是数组返回 true,否则返回 false。