javascript 常用技巧
1.去除数组中空元素
var arr = [1,2,,3,,3,,,0,,,4,,4,,5,,6,,,,]; arr = arr.filter(function(n){return n}); // (javascript 1.6 and above) arr = [1, 2, 3, 3, 4, 4, 5, 6]
2.数组转字符串
var arr = ["aa", "bb", "cc"]; var str1 = arr.join("|"); // => str1 = "aa|bb|cc" var str2 = arr.join(","); // => str2 = "aa,bb,cc"
或:
var str3 = arr.toString(); // => str3 = "aa,bb,cc"
3.颠倒数组中元素顺序
var array = [1,2,3,4]; var revers_arr = arr.reverse(); // reverse_arr =[4,3,2,1]
4.数组排序
i. 该方法是对数组的元素进行排序;sortby参数规定排序顺序,且必须是函数。
如果该方法没有使用参数,则是按字母的字符编码的顺序进行排序。
var arr1 = ["pig","dog","cat"]; var sort_arr1 = arr.sort(); //=> sort_arr=["cat","dog","pig"]
var arr2 = [ "11" , "23" , "8" , "22"];
var sort_arr1 = arr2.sort(); //=> sort_arr=["12", "15", "5", "8"]
ii. 如果想按其他标准进行排序,就需要提供比较函数,该函数比较2个值,然后返回一个用于说明这2个值的相对顺序的数字,比如比较a与b,返回值如下:
若a小于b,在排序后的数组中a应该出现在b之前,则返回一个小于0的值。
若a等于b,在排序后的数组中 a等于b 则返回0;
若a大于b,则返回一个大于0的值;
var arr3 = ["11","23","8","22"];
var sort_arr3 = arrs3.sort(function(a,b){
return a - b; // => sort_arr3 = [ "5" , "8" , "12" , "15"]
});