1.创建数组

  1. var arr = [1, 2, 3, 4];
  2. var a = [1, "html", { "name": "cheng" }];

2.二维数组

数组里面套数组

  1. var arr = [[1,2],[3,4]];
  2. console.log(arr[0][1])
  3. console.log(arr[1][0])

3.数组的方法(增删改查)

3.1增加 (改变数组的内容)

(1)push() //从尾部添加

  1. var arr = [1,2,3,4];
  2. var b = [5,6,7,8];
  3. arr.push(b);
  4. console.log(arr);

QQ截图20201125190254.jpg
(2)unshift() // 从头部添加

  1. var arr = [1,2,3,4];
  2. arr.unshift(0);
  3. console.log(arr);

QQ截图20201125190417.jpg
(3)concat() (不改变原来数组内容)

  1. var arr = [1,2,3];
  2. var c = [ 5,6,7]
  3. var b = arr.concat(c);
  4. console.log(arr);
  5. console.log(b);

QQ截图20201125190538.jpg

3.2删除(改变数组的内容)

(1)pop() //从尾部删除

  1. var arr = [1,2,3,4];
  2. arr.pop();
  3. console.log(arr)

QQ截图20201125190932.jpg
(2)shift() // 从头部删除

  1. var arr = [1,2,3,4];
  2. arr.shift();
  3. console.log(arr)

QQ截图20201125191027.jpg
(3)顶点删除 splice(index,howmany)
index 从哪个下标开始
howmany 删除多少个

  1. var arr = [1,2,3,4,5]; //[1,2,3,5];
  2. arr.splice(3,1);
  3. console.log(arr);

QQ截图20201125191312.jpg

3.3修改

splice(index,howmany,value);
index 从哪个下标开始
howmany 删除多少个
value 插入的值(可以是多个值)

  1. var arr = [1,2,3,4,5];
  2. arr.splice(2,1,7);
  3. console.log(arr);

3.4查询

slice(startIndex,endIndex) 不包含endIndex
slice(startIndex) 截取从startIndex开始到后面所有的值、

  1. var arr = [1,2,3,4];
  2. console.log(arr.indexOf(4));
  3. console.log(arr.slice(1,3));
  4. console.log(arr.slice(1));

QQ截图20201125194128.jpg

4.join

join() 将数组拼接成字符串

  1. var arr = ["html","css","javascript"];
  2. console.log(arr.join());
  3. console.log(arr.join(""))
  4. console.log(arr.join("|"))
  5. console.log(arr.join(" "))

QQ截图20201125194519.jpg

5.升序

  1. var arr = [4,7,1,3,14]; //[1,3,4,7,14]
  2. var res = arr.sort((a,b)=>{
  3. return a-b;
  4. })
  5. console.log(res)

QQ截图20201125194957.jpg

6.降序

  1. var arr = [4,7,1,3,14]; //[1,3,4,7,14]
  2. var res = arr.sort((a,b)=>{
  3. return b-a;
  4. })
  5. console.log(res)

QQ截图20201125194744.jpg

7.求和

(1)sum()

  1. var arr = [1,2,3,4];
  2. var sum = 0;
  3. for(var i=0;i<arr.length;i++){
  4. sum =sum+ arr[i];
  5. }
  6. console.log(sum);

QQ截图20201125195153.jpg
(2)reverse()

  1. var arr = [1,2,3,4];
  2. var sum = arr.reduce((a,b)=>{
  3. return a+b;
  4. })
  5. console.log(sum)
  6. console.log(arr);

QQ截图20201125195354.jpg

8.获取数组中最大的值

(1).第一种方法

  1. function getMaxOfArray(numArray) {
  2. return Math.max.apply(null, numArray);
  3. }

(2).第二种方法

  1. var arr=[1,2,3]
  2. Math.max(...arrr)

(3).第三种方法

  1. function getMaxOfArray(arr){
  2. var max = arr[0];
  3. for(var i=1;i<arr.length;i++){
  4. if(arr[i]>max){
  5. max = arr[i];
  6. }
  7. }
  8. return max;
  9. }
  10. console.log(getMaxOfArray(arr));

9.数组遍历

(1)foreach

  1. var arr = [2,3,4,5];
  2. arr.forEach((item,index)=>{
  3. console.log(item+"--"+index)
  4. item+=2;
  5. })

QQ截图20201125200131.jpg
(2) of

  1. var arr = [1,2,3];
  2. for(var i of arr){
  3. console.log(i)
  4. }

QQ截图20201125200507.jpg
(3)map

  1. var arr = [1,2,3];
  2. var res = arr.map(item=>{
  3. return item*2
  4. })
  5. console.log(arr);
  6. console.log(res);

QQ截图20201125200712.jpg
(4)some和every
some 返回boolean 只有数组中一项满足条件,就输出true
every 返回boolean 只有数组中m每一项满足某个条件,就输出true

  1. var arr = [1,2,3,4];
  2. var res = arr.some(item=>{
  3. return item>2;
  4. })
  5. var b = arr.every(item=>item>2);
  6. console.log(res)
  7. console.log(b);

QQ截图20201125200951.jpg