数组的方法

数组的方法

1. concat() 连接两个或多个数组

不会对原数组产生影响

var result = arr.concat(arr2);  //定义新的数据来接收返回结果

可以传数组或元素

var result = arr.concat(arr2,”hello”,”ss”)

2. join() 将数组转换为一个字符串

不会对原数组产生影响

var result = arr.join();

在join()中可以指定一个字符串作为参数,这个字符串将会成为数组中元素的连接符
不传值的话,结果使用,隔开;

var arr = ["孙悟空","猪八戒","沙和尚","唐僧"];
var result = arr.join();
console.log(result);   // "孙悟空,猪八戒,沙和尚,唐僧"
var result = arr.join(-); 
console.log(result);   // "孙悟空-猪八戒-沙和尚-唐僧"

3. reverse() 反转数组的顺序

方法会直接修改原数组,反转原数组(前边的变后边,后边的换前边)

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

4. sort() 对数组的元素进行排序

方法会直接修改原数组
默认按Unicode编码排序

var arrWord = ["b","z","h","l","c"];
arrWord.sort();
console.log(arrWord); //"b","c","h","l","z"

即使对纯数字的数组,使用sort()排序时,也会按照Unicode编码来排序
所以对数字进行排序时,可能会得到错误的结果
我们可以自己指定排序的规则,通过添加一个回调函数
回调函数中有两个形参,浏览器将会分别使用数组中的元素作为形参去调用回调函数
浏览器会根据回调函数的返回值来决定元素的顺序,
如果返回一个大于0的值,则元素会交换位置
如果返回一个小于0的值,则元素不会交换位置
如果返回一个0,也不交换位置
如果升序排列 return a-b 降序排列 return b-a

var arrNumber = [5,8,9,1,7,2,5,3,4];
        arrNumber.sort(function(a,b){
            // if(a>b) return 1;
            // else if(a<b) return -1;
            // else return 0;

            // 升序排列
            return a-b
            // 降序排列
            // return b-a
        })
console.log(arrNumber); //1, 2, 3, 4, 5, 5, 7, 8, 9

参考:尚硅谷李立超老师

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值