一、增加
1-1、push()从尾部添加
- 可以添加一个值,也可以添加多个
- 不能去拼接数组
一维数组
<script>
var arr=[1,2,3,4];
//增加一个
arr.push(5);
// 增加多个
arr.push(6,7,8);
二维数组
var array=[[1,2],[3,4],[5,6]]
array.push([7,8])
array.push([9,10],[11,12],[13,14])
console.log(array)
1-2、unshift() 头部添加
var arr=[1,2,3,4]
arr.unshift(0)
console.log(arr);
var b=[1,2,3,4]
var a = [5,6,7,8,9]
a.unshift(...b) // (...arr 可以将一个数组展开)
console.log(a);
1-3、concat( ) 连接两个数组 (不改变原数组的内容)
var arr = [1,2,3];
var c = [4,5,6];
var b = arr.concat(c);
console.log(arr); // [1,2,3]
console.log(b); // [1,2,3,4,5,6]
1-4、splice(startIndex,0,元素…) 增加 在起点的前面添加
var arr=[1,2,3,4]
// 增加 在某个下标的前面去增加
arr.splice(2,0,6,7)
console.log(arr) //[1,2,6,7,3,4]
二、删除
2-1、pop()从数组尾部删除
var arr=[1,2,3,4,5,6,7,8,9]
arr.pop();
console.log(arr) //[1,2,3,4,5,6,7,8]
2-2、shift() 从头部删除
var arr=[1,2,3,4,5,6,7,8,9]
arr.shift();
console.log(arr) //[2,3,4,5,6,7,8,9]
2-3、splice(startIndex,长度) 定点删除
var arr = [1,2,3,4,5];
arr.splice(0,2); //从0位开始,删除2个
alert(arr); //[3,4,5]
三、修改
3-1、splice(startIndex,长度,元素…) 修改 先删除后插入
var arr=[1,2,3,4];
// 插入的值可以是多个
arr.splice(2,2,7,8) // 1,2,7,8 从下标为2开始 删除的个数为两个 增加的值为7,8
console.log(arr);
四、查询
4-1、arr[index] 查询对应下标的值
var arr=[1,2,3];
console.log(arr[0]); //1;
4-2、indexOf [value] 查询对应值的下标
var arr=[1,2,3,4];
console.log(arr.indexOf(1)); //0
//如果没有对应的值,则返回-1
4-3、slice(startindex) 传一个参数:截取startindex开始 后面的所有值
var arr=[1,2,3,4];
var b=arr.slice(1);
console.log(b); //2,3,4
4-4、slice(startindex,endindex) 获取数组某一段 不包含最后一位endindex
var arr=[1,2,3,4];
var c = arr.slice(1,3);
console.log(c); //2,3
4-5、slice复制数组
var arr = [1,2,3];
var b = arr.slice(0);
console.log(b); // b=[1,2,3]
4-6、includes 查询数组中是否包含 (输出boolean)
var arr = [1,2,3];
console.log(arr.includes(3)); // true
console.log(arr.includes(5)); // false
五、join 将数组拼接为字符串
5-1、Jion
var arr=["HTML","CSS","JAVASCRIPT"]
var b=arr.join();
console.log(b) //以字符串输出
// 通过指定分隔符,将数组所有元素放入字符串 HTML/CSS/JAVASCRIPT
var c=arr.join("/")
console.log(c)
var d=arr.join(".");
console.log(d) //HTML.CSS.JAVASCRIPT
5-2、例子
<p id="p"></p>
var p = document.getElementById("p")
var arr = ["1994","犯罪","剧情"]
var str = arr.join("/")
p.innerHTML = str
console.log(p);
六、Sort 排序
6-1、升序
var arr=[4,9,1,7,6,2,5,3,8]
// sort
var res=arr.sort((a,b)=>{
//升序
return a-b;
})
console.log(res)
6-2、降序
var arr=[4,9,1,7,6,2,5,3,8]
var re=arr.sort((a,b)=>{
// 降序
return b-a;
})
console.log(re)
6-3、数组含字符串排序
var array = ['白鸽', '麻雀', '大象', '狗', '猫', "鸡"];
array = array.sort(function compareFunction(item1, item2) {
return item1.localeCompare(item2);
});
//["白鸽", "大象", "狗", "鸡", "麻雀", "猫"]
七、归并求和
7-1、arr.reduce( ) 求和
var arr = [1,2,3,4]
var sum = arr.reduce((a,b)=>{
return a+b;
})
console.log(sum);
八、获取最值
8-1、获取最大值
8-1-1、Math.max(…arr)
var arr=[5,17,59,13,4];
console.log(Math.max(...arr))
8-1-2、算法
function getMaxOfArray(arr){
var max = arr[0];
for(var i=1;i<arr.length;i++){
if(arr[i]>max){
max = arr[i];
}
}
return max;
}
console.log(getMaxOfArray(arr));
8-2、获取最小值
8-2-1、Math.min(…arr) 取最小值
var arr=[4,9,1,3,6];
console.log(Math.min(...arr));
</script>
8-2-2、算法
<script>
var arr=[4,9,1,3,6];
var min=arr[0];
for(var i=1;i<arr.length;i++){
if(min>arr[i]){
min=arr[i];
}
}
console.log(min);
</script>
九、反转数组
9-1、arr.reverse( ) 反转
var arr = ["html","css","javascript"]
console.log(arr.reverse()); // ["javascript","css","html"]
十、ES6 Set方法
var arr=[1,2,3,4,1,2,3,5,6,7]
var s=new Set(arr)
// console.log(s)
// s.add(8) s=[1,2,3,4,5,6,7,8] add增加数据
// console.log(s.size) 输出为数组长度size
// s.clear() 清空数组
// s.delete(2) 执行删除 删除对应的数值 定点删除
// console.log(s.has(2)) 输出布尔值
// arr.forEach(item=>{
// console.log(item)
// }) 输出每一项