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]