粗解数组的一些常用方法-slice、splice、pop、shift、unshift、push、reverse、sort、concat、join等

数组常用方法
在这里插入图片描述

创建空数组

    var arr1 = [];
    var arr2 = new Array();

1、push方法

// push:在数组末尾添加一个元素,元素之间使用逗号隔开
var arr = [1, 3, 5];
arr.push(4);
console.log(arr); //[1,3,5,4]

2、pop方法

   // pop:删除数组末尾的元素
    var arr3 = [1, 2, 3];
    arr3.pop();
    console.log(arr3); //[1,2]

3、unshift方法

   // unshift:在数组最前面添加一个元素、若为字符串则加引号
    var arr4 = [1, 2, 3];
    arr4.unshift(4);
    arr4.unshift("a");
    console.log(arr4); //[4,1,2,3]
    console.log(arr4); //['a',4,1,2,3]

4、shift方法

  //shift:删除数组最前面的一个元素
    var arr5 = [1, 2, 3];
    arr.shift();
    console.log(arr5); //[2,3]

5、splice方法 :

替换数组中的字符串、截取字符串、替换字符串
注意:返回截取后的数组
语法:splice(索引起始位置,截取数量,替换的新元素) 第三个参数可以不写
  • 用法一:截出字符串:第三个参数不写时就是没有新内容替换截取位置
var arr6 = [1, 2, 3, 4, 5];
arr6.splice(1, 2);
console.log(arr6); // [1,4,5]
  • 用法二:填充新内容:在下标为1的地方截取0个元素并且填充一个元素
var arr6 = [1, 2, 3, 4, 5];
arr6.splice(1, 0, "a");
console.log(arr6); //[1,'a',2,3,4,5]
  • 用法三:截出元素并填充新元素
var arr6 = [1, 2, 3, 4, 5];
arr6.splice(1, 2, "a");
console.log(arr6); //[1,'a',4,5]

6、 reverse:反转数组

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

7、sort:数组排序方法 —可以针对数字和字符串

  • 用法一:无参
sort方法无参数时,按照元素第一个字符排序
var arr7 = [2, 3, 11, 1, 7, 22];
arr7.sort();
console.log(arr7); //[1,11,2,22,3,7]
  • 用法二:有参排序
    注意:有参数排序:只针对数值的排序和字符串无关
 	var arr7 = [2, 3, 11, 1, 7, 22];
    // 使用普通函数
    arr7.sort(function (a, b) {
      //   return a - b; //升序(a-b >0)-[1,2,3,7,11,22]
      return b - a; //降序(b-a<0) - [22,11,7,3,2,1]
    });
    // 使用箭头函数
    arr7.sort((a, b) => {
       return a - b; //升序(a-b >0)
       return b - a; //降序(b-a<0)
    // });
    console.log(arr7);
  • 字符串数组
    var arr8 = ["a", "f", "aa", "s", "b", "ab"];
    arr8.sort();
    console.log(arr8); //['a', 'aa', 'ab', 'b', 'f', 's']
  • 数值和字符串混合数组
    var arr9 = [1, "a", 3, "f", 6];
    arr9.sort();
    console.log(arr9); //[1,3,6,'a','f']

8、数组合并:concat

    var arr10 = [1, 2, 3];
    var newArr10 = arr10.concat([4]);
    console.log(arr10); //[1,2,3]
    console.log(newArr10); //[1,2,3,4]
  • 合并扩展
    //es6的数组合并
    var es6 = [1, 2];
    var newEs6 = [...es6, 4];

9、合并数字为字符串—join

  • 语法:join(拼接后的连接符)
    var arrJoin = [1, "a"];
    var str = arrJoin.join("-");
    console.log(arrJoin); //[1,'a']
    console.log(str); //'1-a'

10、查找数组元素的下标:indexOf、lastIndexOf

  • indexOf:
    • 用于查找数组中的某一项的索引
    • 判断数组中是否存在某元素
    • 只会返回元素第一次出现在数组中的位置
  • 语法:indexOf(目标查找的下标,开始查找的位置) 第二个参数可不填,不填表示从第一位开始查找,当元素存在则返回元素的下标,不存在则返回-1
   var inArr = [1, 2, 3, 4];
    var index = inArr.indexOf(1);
    console.log(index); //0  元素1所在的下标
    var Arr = [1, 2, 3, 4];
    var inde = Arr.indexOf(10);
    console.log(inde); // -1 :10不在Arr数组中
  • lastIndexOf:用于查找元素在数组中的最后一个的索引,若不存在返回 -1
    • 语法:lastIndexOf(查找的元素)
    • 用法:请参考indexOf()方法的用法

11、截取数组:slice

- 作用:从已有的数组中返回选定的元素
- 语法:slice(起始下标、结束下标) 截取的元素包含起始位置,不包含结束位置;当只有一个参数时会从参数位置取到末尾位置(此时包含起始位置)
- 注意:

1、当不写参数时,表示复制数组
2、参数为正数时从左往右下标从0开始,参数为负数时从右往左下标从-1开始

    var fruits = ["a", "b", "c", "d"];
    //截取数组
    var str = fruits.slice(1, 2);
    console.log(str); // ['b']
    //截取数组:参数为负数时
    var str1 = fruits.slice(-2);
    console.log(str1); //['c','d']
    //不写参数时表示复制数组
    var str2 = fruits.slice();
    console.log(str2); //["a", "b", "c", "d"]

若有遗漏之处敬请评论区的大神补充!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小胡学前端

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值