2-1增加
2-1-1 push( )从尾部添加
特点:1.可以添加一个值,也可以添加多个
2.不能去拼接数组
var arr = [1,2,3,4] var b = [5,6,7,8]arr.push(5,6,7,8)console.log(arr); // [1,2,3,4,5,6,7,8]arr.push(b) // 不能实现 console.log(arr);
2-1-2 扩展运算符
. . . arr 可以将一个数组展开
var arr = [1,2,3]console.log(arr);console.log(...arr); // 1 2 3var a=[4,5,6]var b = [7,8,9]a.push(...b) // 拼接数组console.log(a);
2-1-3 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)console.log(a);
2-1-4 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]
2-1-5 splice(startlndex,0,元素) 增加 在起点的前面添加
var a =[1,2,3,4]a.splice(1,0,8,9) // [1,8,9,2,3,4]console.log(a);
2-2删除
2-2-1 pop( )从尾部删除
var arr = [1,2,3,4]arr.pop()console.log(arr) // [1,2,3]
2-2-2 shift( )从头部删除
var arr = [1,2,3,4]arr.shift()console.log(arr); // [2,3,4]
2-2-3 splice(startlindex,长度) 定点删除
var arr = [1,2,3,4,5]arr.splice(3,1)console.log(arr); // [1,2,3,5]
2-3修改
2-3-1 splice(startlndex,长度, 元素….)先修改 删除后插入
var a =[1,2,3,4,5]a.splice(2,1,9)console.log(a); // [1,2,9,4,5]
2-4查询
2-4-1 arr[index] 查询对应下标的值
//arr[index] 查询对应下标的值var arr=[1,2,3];console.log(arr[0]); //1;
2-4-2 indexOf(value)查询对应值的下标
var arr=[1,2,3,4];console.log(arr.indexOf(1)); // 0//如果没有对应的值,则返回-1
2-4-3 includes(value)判断数组是否包含某个值
// 返回booleanvar arr = [1,2,3,4]console.log(arr.includes(5)); // false
2-4-4 slice(start,end)截取(包含开始,不含结束)
// slice(startIndex,endIndex) 截取 包含开始不含结束// slice(startIndex) 截取从startIndex开始到后面的所有值var arr = [1,2,3,4]console.log(arr.slice(1,3)); // [2,3]console.log(arr.slice(1)); // [2,3,4]
2-5 join 将数组拼接为字符串
var arr = ["html","css","javascript"]console.log(arr.join()); // html,css,javascriptconsole.log(arr.join("|")); // html|css|javascriptconsole.log(arr.join("")); // htmlcssjavascript
2-5-1实例
<p id="p"></p>var p = document.getElementById("p")var arr = ["1994","犯罪","剧情"]var str = arr.join("/")p.innerHTML = strconsole.log(p);
2-6 sort排序
2-6-1升序算法
var arr = [4,7,18,20,3] // [3,4,7,18,20]/* 升序算法 */arr.sort((a,b)=>{ return a-b;})console.log(arr);
2-6-2降序算法
arr.sort((a,b)=>{ return b-a;})console.log(arr);
2-7 求和
2-7-1 arr.reduce( )求和
当数组中复杂数据类型时失效
var arr = [1,2,3,4] var sum = arr.reduce((a,b)=>{ return a+b; }) console.log(sum);
2-8 最大值 && 最小值
2-8-1 Math.max(…arr) 对数组取最大值
var arr = [1,2,3]console.log(Math.max(...arr));
2-8-2 Math.min(…arr)取最小值
// 简单的算法实现var arr = [4,3,2,1]var minNum = arr[0]for(var i=1;i<arr.length;i++){ if(minNum>arr[i]){ minNum=arr[i] }}console.log(minNum);// Math.min(...arr) 取最小值var arr = [4,3,1]console.log(Math.min(...arr));
2-9 arr.reverse( )反转
var arr = ["html","css","javascript"]console.log(arr.reverse()); // ["javascript","css","html"]