js高级数组Api

1.arr.push(字符)

arr.push(字符) 往数组最后添加数据;返回数组的长度

参数

字符:随意数据,随意个数;

2. arr.unshift(字符)

arr.unshift(字符) 往数组最前添加;返回数组长度

参数

字符:随意数据,随意个数;

3.arr.pop()

arr.pop()删除数组最后一项;返回数组 删除的一项

4.arr.shift()

arr.shift() 删除数组最前面的一项; 返回数组 删除的一项

5.多功能api arr.splice

5.arr.splice(index,length[,info]) 多功能api;删除,替换,截取,添加

index 数字==>数组的下标

length 数字==> 截取长度

info 字符==> 任意字符,随意个数

返回值 是截取的数组数据

只写index参数,从index下标开始截取到最后

只写index,length,从index下标开始截取length个数据

只写index,length,info 可以组合成各种api功能

写length个数与info个一样 替换原数组功能

写length 0个数与随意个数 添加原数组功能,能指定任意位置

info个数大于length个数 替换与添加原数组功能

6.arr.reverse()

arr.reverse() 数组翻转;返回翻转后的数据

7.arr.sort()

arr.sort(函数) 数组排序方法; 从大道小,从小到大

参数

         函数 ==> function(){} || ()=>{}

会接收形参参数,系统自传

return 形参1 -形参2 || 形参2 -形参1

Array ---Api

 push unshift pop shift splice reverse sort 会改变原数组


    <script>
        let arr =["iu","lisa","夏栀","锦鲤","丫丫"];
        //数组最后面添加
        let newArr=arr.push("朱雀","丸子");
        console.log(newArr,"newArr");
        //数组最前添加
        let newArr1=arr.unshift("朱雀");
        console.log(newArr1,"newArr1");
        //删除数组最后一项
        let newArr2=arr.pop();
        console.log(newArr2,"newArr2");
        //删除数组最前一项
        let newArr3 =arr.shift()
        console.log(newArr3,"newArr3");
        // splice() 多功能api;删除,替换,截取,添加
        let oldArr =["篮球","足球","羽毛球","乒乓球","排球"];
        let newOldArr=oldArr.slice(1,2,2,2,3)
        console.log(newOldArr,"返回值newOldArr");
        console.log(oldArr,"原数组oldArr");
        // reverse() 数组翻转
        let a=arr.reverse()
        console.log(a,"a");
        console.log(arr,"78arr");
        // 排序数组 sort(函数) 数字从大到小 从小到大
        let qwe=[11,22,33,12,69,23];
        let newqwe = qwe.sort(function(qq,ww){ //形参参数,系统自传;
            return ww -qq

        })
        console.log(newqwe);
        console.log(qwe,"qwe");
        console.log("--------------");

        let qw1=[
            {"name":"夏栀",age:18},
            {"name":"iu",age:22},
            {"name":"lisa",age:33},
            {"name":"锦鲤",age:12}, 
            {"name":"丫丫",age:23},
        ];
        let newqwe1=qwe1.sort(function(qq,ww){ //形参参数,系统自传;
            
            return ww.age - qq.age
        })
        console.log(newqwe1);
        console.log(qwe1,"qwe1");


    </script>

8.arr.concat(arr)

arr.concat(arr) 合并数组;返回新数组

参数

        arr 数组,可以多个

..[] 能将数组中的每一项解构成独立的每一项 存在

9.arr.join(字符)

arr.join(字符) 数组转化成字符串;将数组中的,转化字符参数进行拼接;返回字符串

参数

        字符==> 任意字符

10.arr.indexOf(字符)

arr.indexOf(字符)查找数组中数据位置,查找到返回下标;未查找到返回-1

参数

        字符==> 数组中的数据

与字符串的indexOf一样

11.arr.includes(字符)

arr.includes(字符) 返回 布尔值

参数

        字符 ==> 数组中的数据

  //合并数组
        let arr=["iu","lisa","夏栀","锦鲤","丫丫"];
        let newArr =["篮球","足球","羽毛球","乒乓球","排球"];
        let a =arr.concat(newArr)
        let c=[...arr,...newArr]
        // 数组转化成字符串
        let d=arr.join("-")
        //查找数据在数组中对应位置;
        let add =arr.indexOf("lsa")
        // 判断数组中是否存在该数据
        let bol = arr.includes("lisa")
        console.log(bol);
        

12.高级数组

进阶区

1.arr.forEach(函数)

arr.forEach(函数)自动循环数组;没有返回值

参数

        函数 = function(){} || ()=>{}

系统自传参数,形参接收

        第一个参数 数组的每一项

        第二个参数  数组每一项的下标

        第三个参数  数组本身

2.arr.map(函数)

arr.map(函数) 自动循环数组;

参数

        函数= function(){} || ()={}

系统自传参数,形参接收

        第一个参数 数组的每一项

        第二个参数 数组每一项的下标

        第三个参数 数组本身

有返回值;需要return配合;如果不需要return 返回;那就不要使用map函数,使用 forEach

3.arr.reduce

arr.reduce(函数,prev) 自动循环数组;计算数组的值

参数

        函数 = function(){} || ()=>{}

系统自传参数,形参接收

        第一个参数 第一次循环时是数组的第一项,后续循环reduce上一次计算的结果;需要return配合

        第二个参数 是当前值

        第三个参数 数组当前值对应的下标

        第四个参数 数组本身

prev参数  是prev的第一个值

  let arr=["iu","lisa","夏栀","锦鲤","丫丫"];
        //根据数组长度进行循环处理对应代码数据
        arr.forEach((item,index,newArr)=>{
            // console.log("我要取"+ item)
        })
        //根据数组长度进行循环处理数组结构或数组内容;返回一个新的数组
        let result =arr.map((item,index,newArr)=>{
            // return "我要取" + item
        
        })
        console.log(result);
        //用于计算数组的值;需要return配合;返回一个计算后的结果
        //prev 第一次循环时是数组的第一项,后续循环是reduce上一次计算的结果;需要return配合
        //next 是当前值
        //index 当前值下标

        // 传递参数 prev 第一次是传递的参数,不是数组的第一项
        //有bug,不理解
        let newArr =[1,2,3,4,5,6];
        let aaa=newArr.reduce((prev,next,index,newArr)=>{
            console.log(prev,next,index);
            return prev+next
        },10)
        console.log(aaa);

        

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

小白村第一深情

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

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

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

打赏作者

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

抵扣说明:

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

余额充值