JS中数组有哪些人尽皆知的方法??

sort  排序

默认是按照数据转化为二进制时的编码顺序比对的,只能实现相同位数的元素排序

var arr = [5,2,3,,13,6,4];

        arr.sort();//排序无效

        console.log(arr); 

高阶函数:实现真正的数值排序

var arr = [5, 9, 13, 6, 2];

        arr.sort(function (a, b) {

        //return a - b; //从小到大排序

        return b - a; //从大到小排序

        });

        console.log(arr);

reverse   反转数组元素

var arr = ['玫瑰花', '菊花', '枸杞', '信阳毛尖', '正山小种'];

var res = arr.reverse();

console.log(res);

//["菊花", "玫瑰花", "正山小种", "枸杞", "信阳毛尖"]

 join(制定连接符号)  将数组转化为字符串

var arr = ['玫瑰花', '菊花', '枸杞', '信阳毛尖', '正山小种'];

 var res = arr.join('-');

 console.log(res);    //菊花-玫瑰花-正山小种-枸杞-信阳毛尖

 concat  合并数组

 var arr = ['玫瑰花', '菊花', '枸杞', '信阳毛尖', '正山小种'];

         var arr1= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         var arr2 = arr.concat(arr1);

         console.log(arr2);//(8) ["玫瑰花", "菊花", "枸杞", "信阳毛尖", "正山小种", "黄焖鸽子", "青菜肉丝面", "清炖鸽子"]

 pop  弹出数组最后元素,数组本身发生改变

 var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         var res1 = arr.pop();

            console.log(res1);//清炖鸽子

            console.log(arr);//(2) ["黄焖鸽子", "青菜肉丝面"]

 push  向数组尾部添加元素 

var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         arr.push('米饭套餐');

         console.log(arr);//(4) ["黄焖鸽子", "青菜肉丝面", "清炖鸽子", "米饭套餐"]

 shift  弹出数组第一个元素

var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         var res = arr.shift();

         console.log(res);//黄焖鸽子

 unshift  向数组头部添加元素

var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         arr.unshift('信阳红');

         console.log(arr);//(4) ["信阳红", "黄焖鸽子", "青菜肉丝面", "清炖鸽子"]

slice(start,end)   截取数组的指定位置元素,包含开始start,但不包含结束end, 原数组不发生改变

var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         var res1 = arr.slice(0,2 )

         console.log(res1);//(2) ["黄焖鸽子", "青菜肉丝面"]

splice(start,length)  截取或替换数组元素, length 是长度,包含开始start,但不包含结束end,原数组会发生改变 

 截取

 var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         var res1 = arr.splice(0,2 )

         console.log(res1);//(2) ["黄焖鸽子", "青菜肉丝面"]

    替换     console.log(arr);["清炖鸽子"]

替换

arr.splice(start, length, 元素1, 元素2, 元素3...) 截取的长度是几,就写几个替换元素

var arr= ['黄焖鸽子', '青菜肉丝面', '清炖鸽子'];

         var res1 = arr.splice(1, 2, '铁观音', '碧潭飘雪');

            console.log(res1);//(2) ["青菜肉丝面", "清炖鸽子"]

            console.log(arr);//(3) ["黄焖鸽子", "铁观音", "碧潭飘雪"]

总结 

方法名描述
arr.sort();给数组排序,先数字后英文再中文,排序规则,按照对应的编码
arr.reverse();反转数组元素
arr.join(str);将数组划分为字符串,数组元素以str分隔(默认是逗号)
arr.concat(arr1,arr2,...,arr3);合并数组,可以是多个,多个之间用逗号隔开“,”
arr.pop();弹出arr数组最后一个元素,返回弹出的元素值
arr.push(data);给arr数组最后添加一个data元素,返回新数组的长度
arr.shift()弹出arr数组第一个元素,并反弹出的元素值
arr.unshift(data);给arr数组最前面添加一个data元素,返回新数组的长度
arr.slice(start,end)分割数组,返回arr中start到end之间的元素,不包含end
splice(start,长度) 用于元素的删除数组中替换或者插入元素,长度为要删除的元素个数

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值