Js 内置数组API 2
//indexOf() 获取首个指定元素在数组中的索引,如果不存在,返回-1,如果存在,则返回数组中首次找到的相同元素的索引值
var arr = [1,1,2,2,3,3,4,4];
var res =arr.indexOf(3);
var res1 = arr.indexOf(5);
console.log(res,res1);
//lastIndexOf() 从后往前去查找首个元素出现的位置
console.log(arr.indexOf(1),arr.lastIndexOf(1));
//在1-100中,将含有7以及7的倍数的数去除,生成一个新的数组
var arr1 = [];
for (let i = 1; i <= 100; i++) {
if(i%7==0||i%10==7||i-i%10==70){
continue;
}else{
arr1.push(i);
}
}
console.log(arr1);
//slice(start,end) 截取 返回值时截取下来的数组,对原数组没影响
//start 开始截取的索引值 end 结束索引的索引值(不包括)
var res = arr1.slice(0,9);
console.log(res);
//只写一个值 会从这个值开始截取到数组最后
var res1 = arr1.slice(50);
console.log(res1);
//splice(start,count,newItem) 删除数组中的某些项,添加新项(可选)返回的是删除的数据 会改变原数组
var arr2 = [1,2,3,4,5,6,7,8,9];
/*
start 开始删除的索引位置
count 删除数量,可选,如果不填则删除后面所有,为0,不删除
newItem 从开始删除的位置(方法中第三个开始参数) 添加新的项 数量不限
*/
// var res2 = arr2.splice(5);
// var res2 = arr2.splice(5,2);
var res2 = arr2.splice(5,2,10,11);
console.log(arr2,res2);
//delete 删除某个 会保留原位置,数组的长度不会改变
delete arr2[0];
console.log(arr2);