js中数组的常用的几种内置方法
1. join ( ) 将数组中的单元连接成一串字符
*2. push() 向数组中的末尾添加元素
*3. pop ( ) 删除数组末尾的元素,每次只能删除一个,返回值是删除的项
*4. shift ( ) 删除数组首部的元素,每次只能删除一个,返回值是删除的项
5. unshift ( ) 向数组首部添加元素
6. sort ( ) 对数组进行排序,默认为升序
按照ASCII码值进行排序
7. reverse ( ) 将数组元素颠倒排序
8. concat ( ) 连接两个或多个数组
*9. slice ( ) 切片函数,从元素组中截取部分元素组成新的数组。
截取时需设定两个值:开始索引和结束索引
截取包含开始索引的和不包含结束索引的元素,两者直接的元素返回数组
(索引为负,则表示从后向前数的顺序)
// 已知数组
var arr = [1, 3, 8, 12, 5, 7, 9, 11];
console.log(arr);
// 使用slice对arr进行切片
let a1 = arr.slice(1);// 截掉第一项
console.log(a1); // a1 = [3, 8, 12, 5, 7, 9, 11]
let a2 = arr.slice(1,4); //截取包含索引为1的元素但不包含索引为4的元素
console.log(a2); // a2 = [3,8,12]
*10. splice ( ) 可以实 现对数组元素的插入、删除和替换
(1) 返回的是删除的数组, 会改变原来的数组
参数一: 开始删除的索引位置
参数二: 要删除几个 如果没有值就默认删除参一索引后的所有, 如果是0不删除
参数三及以后: 从删除的位置开始,往后添加新的项
*11. indexof( )
从左向右查找元素的位置。返回元素在数组中的下标(索引),
若返回 -1 表示未找到该元素
*12. lastindexof ( )
从右向左查找元素位置
13. filter ( fuction ( value , index) { // 过滤函数
函数体语句
})
var arr = [1, 3, 8, 12, 5, 7, 9, 11];
// 过滤函数-filter
var temp = arr.filter(function (value, index) {
return value % 8 == 1;
})
console.log(temp); // [1,9]
14. fill(值/变量):用给定的值或变量填充数组
var arr = [1, 3, 8, 12, 5, 7, 9, 11];
// 填充-fill函数
var a6 = new Array(6); // 新数组为空
a6.fill(6);
console.log(a6); //[6,6,6,6,6,6]
15. every(function(value) {
// 判断数组中每一项都是否满足条件,只有所有项都满足条件,才会返回 true
return 条件表达式
})
var arr = [1, 3, 8, 12, 5, 7, 9, 11];
var flag = arr.every(function (value, index) {
return value > 5;
})
console.log(flag); // 不满足所有的value 都大于 5 ,返回flse
16. includes ( ) 判断是否包含指定元素
var arr = [45,78,89,55,46,31]
//判断arr数组中是否包含89,若有返回true,没有就返回false
var flag = arr.includes(89)
//从下标为3的元素开始查找,若有返回true,没有就返回false
var flag1 = arr.includes(89,3)
console.log(flag1)
17. findIndex( function ( value) { // value 表示数组的元素
return 条件表达式; // 返回值为数组的索引
}
函数调用练习:
var arr = [12,23,26,45,58,60];
var x = 55;
var insert_index = arr.findIndex(function(value){ //value:表示数组元素
return value>=x ; //返回数组中第一个大于x的元素的索引
})
// 调用内置函数,将x插入原有序数组
arr.splice(insert_index,0,x);
console.log(arr); //[12,23,26,45,55,58,60]