javascript 学习 第13天 数组 转化 排序

1,数组拥有的成员的数量 可以通过 数组的 length 属性 获取

对象没有 length 属性

对象的静态方法 Object.keys() 能返回对象的成员名的 索引数组 索引数组的 length 属性 就是 对象的成员的数量

2,字符串转数组

split()

var str="sukla";
undefined
str.split('');
(5) ["s", "u", "k", "l", "a"]
str
"sukla"

3,数组转字符串

arr.toString()

var arr=[1,2,3];
undefined
arr.toString();
"1,2,3"
arr
(3) [1, 2, 3]
转化为以逗号分隔的字符串
arr.join()

var arr=[1,2,3];
undefined
arr.join("sukla");
"1sukla2sukla3"
arr
(3) [1, 2, 3]
默认转化为以逗号分隔的字符串 传入一个分隔符的话 就是按照这个分隔符分隔的字符串

4,排序

sort()

是按照成员的字串来排序的 

var arr=[1,20,3,40,5,60];
undefined
arr.sort();
(6) [1, 20, 3, 40, 5, 60]


可以接受一个回掉函数参数 回掉函数接受每次比较的两个成员 A 和 后面的 B 

如果 返回 一个正数 那么把 A 放到后面 把 B 放到前面

如果 返回 0 那么 不改变位置

如果 返回一个负数 那么 把 A放到前面 把 B放到 后面 效果和 返回0一样

如果要根据成员的数字大小来排序的话 可以在回调函数中判断 然后根据想要的顺序 决定返回什么值来改变数组的排序

升序

var arr=[1,20,3,40,5,60];
undefined
arr.sort(function(a,b){
return a-b;
})
(6) [1, 3, 5, 20, 40, 60]
降序


arr.sort(function(a,b){
return b-a;
})
(6) [60, 40, 20, 5, 3, 1]
reverse();

颠倒数组的排序

不能像sort() 那样接受回调函数

var arr=[1,20,3,40,5,60];
undefined
arr.reverse(function(){return 0})
(6) [60, 5, 40, 3, 20, 1]
arr.reverse(function(){return 1})
(6) [1, 20, 3, 40, 5, 60]
arr.reverse(function(){return -1})
(6) [60, 5, 40, 3, 20, 1]






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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值