初级JS--数组方法总结

 数组的方法-----总结

      //数组的方法
      var arr = [5, 6];
      //在末尾添加一个用push()方法
      arr.push(1, 2, 4);
      console.log(arr);
      //删除末尾的一个元素,返回删除的元素
      arr.pop();
      console.log(arr);
      //在数组的最前面添加一个元素
      arr.unshift(1);
      console.log(arr);
      //删除数组最前面的一个元素
      arr.shift();
      console.log(arr);
      //截取数组中的某些内容,按照数组的索引来截取
      //三个参数  splice(从哪一个索引位置开始,截取多少个,替换的新元素)
      arr.splice(2, 1, 4);
      console.log(arr);
      //用来反转数组使用的
      arr.reverse();
      console.log(arr);
      //把多个数组进行拼接
      arr2 = [7, 8];
      var res1 = arr.concat(arr2, 9, [100, 200]);
      console.log(res1);
      //把数组里面的每一项内容链接起来,变成一个字符串
      var arr3 = [1, 2, 3, 4, 5];
      var res2 = arr3.join("-");
      console.log(res2);
      //复制数组的一部分
      //参数 两个  开始位置  结束位置,不包含结束位置
      var res3 = arr.slice(1, 3);
      console.log(res3);
      //查找元素的第一次出现的下标 ,如果找到返回下标,找不到返回 -1
      var res4 = arr.indexOf(6);
      console.log(res4);
      //是用来给数组排序的(默认按照字典排序  先按照第一位排序-如果第一位相等就按照第二位)
      var arr4 = [3, 5, 1];
      arr4.sort();
      console.log(arr4);
      //升序
      arr4.sort(function (a, b) {
        console.log(a, b);
        return a - b;
      });
      console.log(arr4);
      //降序
      arr4.sort(function (a, b) {
        console.log(a, b);
        return b - a;
      });
      console.log(arr4);

      //forEach
      //   var arr = [2, 3, 4, 5, 6, 7];
      arr.forEach(function (v, i, a) {
        console.log(111);
        console.log(v, i);
        console.log(a);
      });
      arr.forEach(function (v) {
        console.log(v);
      });
      arr.forEach(function (v, i) {
        //需先定义v
        console.log(i);
      });

      //map(),会返回一个新数组
      var resArr = arr.map(function (v, i, a) {
        console.log(v, i, a);
        //return 映射的规则
        return v * 1.3;
      });
      console.log(resArr);

      //filter 过滤,筛选
      var arr2 = [1, 2, 4, 55, 66, 12, 2, 3, 5];
      var resArr2 = arr2.filter(function (v) {
        // return 过滤条件  筛选出来
        return v >= 18;
      });
      console.log(resArr2);
      var arr3 = [
        { name: "zhangsan", age: 10 },
        { name: "lisi", age: 20 },
        { name: "wangwu", age: 30 },
      ];
      var resArr = arr3.filter(function (v) {
        return v.age >= 18;
      });
      console.log(resArr);

      var resArr1 = arr3.filter(function (v) {
        //名字包含li
        // return v.name.includes("li");
        //是否以wang开头
        return v.name.startsWith("wang");
      });
      console.log(resArr1);

      var arr = [
        { name: "zhangsan", age: 10 },
        { name: "lisi", age: 20 },
        { name: "wangwu", age: 30 },
      ];
      //判断一些元素是否满足条件  some
      var flag = arr.some(function (v) {
        return v.age >= 18;
      });
      console.log(flag); //true
      //判断所有元素是否满足条件  every
      var flag = arr.every(function (v) {
        return v.age > 18;
      });
      console.log(flag); //false

      //根据条件查找 满足条件的第一个元素
      var obj = arr.find(function (v) {
        return v.name == "wangwu";
      });
      console.log(obj);

      //根据条件查找 满足条件的第一个元素的下标
      var index = arr.findIndex(function (v) {
        return v.name == "lisi";
      });
      console.log(index);

      //reduce 数组有很多元素,经过reduce处理变成一个值
      var arr = [4, 5, 6, 7, 8];
      //求和的应用
      //   有两个参数,第一个参数是一个函数,第二个参数是初始值,0
      var res = arr.reduce(function (sum, v) {
        console.log(sum, v);
        return sum + v;
      }, 0);
      console.log("和为:" + res);

      //如果不传第二个参数,sum的初始值为数组的第一个元素
      var res = arr.reduce(function (sum, v) {
        console.log(sum, v);
        return sum + v;
      });
      console.log("和为:" + res);

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值