1.创建数组
var arr = [1, 2, 3, 4];
var a = [1, "html", { "name": "cheng" }];
2.二维数组
数组里面套数组
var arr = [[1,2],[3,4]];
console.log(arr[0][1])
console.log(arr[1][0])
3.数组的方法(增删改查)
3.1增加 (改变数组的内容)
(1)push() //从尾部添加
var arr = [1,2,3,4];
var b = [5,6,7,8];
arr.push(b);
console.log(arr);
(2)unshift() // 从头部添加
var arr = [1,2,3,4];
arr.unshift(0);
console.log(arr);
(3)concat() (不改变原来数组内容)
var arr = [1,2,3];
var c = [ 5,6,7]
var b = arr.concat(c);
console.log(arr);
console.log(b);
3.2删除(改变数组的内容)
(1)pop() //从尾部删除
var arr = [1,2,3,4];
arr.pop();
console.log(arr)
(2)shift() // 从头部删除
var arr = [1,2,3,4];
arr.shift();
console.log(arr)
(3)顶点删除 splice(index,howmany)
index 从哪个下标开始
howmany 删除多少个
var arr = [1,2,3,4,5]; //[1,2,3,5];
arr.splice(3,1);
console.log(arr);
3.3修改
splice(index,howmany,value);
index 从哪个下标开始
howmany 删除多少个
value 插入的值(可以是多个值)
var arr = [1,2,3,4,5];
arr.splice(2,1,7);
console.log(arr);
3.4查询
slice(startIndex,endIndex) 不包含endIndex
slice(startIndex) 截取从startIndex开始到后面所有的值、
var arr = [1,2,3,4];
console.log(arr.indexOf(4));
console.log(arr.slice(1,3));
console.log(arr.slice(1));
4.join
join() 将数组拼接成字符串
var arr = ["html","css","javascript"];
console.log(arr.join());
console.log(arr.join(""))
console.log(arr.join("|"))
console.log(arr.join(" "))
5.升序
var arr = [4,7,1,3,14]; //[1,3,4,7,14]
var res = arr.sort((a,b)=>{
return a-b;
})
console.log(res)
6.降序
var arr = [4,7,1,3,14]; //[1,3,4,7,14]
var res = arr.sort((a,b)=>{
return b-a;
})
console.log(res)
7.求和
(1)sum()
var arr = [1,2,3,4];
var sum = 0;
for(var i=0;i<arr.length;i++){
sum =sum+ arr[i];
}
console.log(sum);
(2)reverse()
var arr = [1,2,3,4];
var sum = arr.reduce((a,b)=>{
return a+b;
})
console.log(sum)
console.log(arr);
8.获取数组中最大的值
(1).第一种方法
function getMaxOfArray(numArray) {
return Math.max.apply(null, numArray);
}
(2).第二种方法
var arr=[1,2,3]
Math.max(...arrr)
(3).第三种方法
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));
9.数组遍历
(1)foreach
var arr = [2,3,4,5];
arr.forEach((item,index)=>{
console.log(item+"--"+index)
item+=2;
})
(2) of
var arr = [1,2,3];
for(var i of arr){
console.log(i)
}
(3)map
var arr = [1,2,3];
var res = arr.map(item=>{
return item*2
})
console.log(arr);
console.log(res);
(4)some和every
some 返回boolean 只有数组中一项满足条件,就输出true
every 返回boolean 只有数组中m每一项满足某个条件,就输出true
var arr = [1,2,3,4];
var res = arr.some(item=>{
return item>2;
})
var b = arr.every(item=>item>2);
console.log(res)
console.log(b);