原文:https://segmentfault.com/a/1190000008376080

生成指定范围内的随机数

function setRadomNum(min,max){        
    return  Math.floor(Math.random() * (max - min + 1)) + min;
}

json转url参数

function json2url(json) {    
    var arr=[];    
    for(var name in json){
        arr.push(name+'='+json[name]);
    }    
    return arr.join('&');
}

验证是否为数组

function isArray(obj){    
    return Array.isArray(obj) || Object.prototype.toString.call(obj) === '[object Array]';
}

获取数组中的最大值或最小值

function maxAndMin(arr){    
    return {
       max:Math.max.apply(null,arr.join(',').split(',')),
       min:Math.min.apply(null,arr.join(',').split(','))
    }
}

该方法适合一维或者多维数组。

随机获取数组里的元素

function getRadomFromArr(arr){    
    return arr[Math.floor(Math.random()*arr.length)];
}

从数组里查找指定的值

查到了返回true,没查到返回false。

function findInArr(arr, value){    
    for (var i=0; i<arr.length; i++){        
        if (arr[i] == value){            
            return true;
        }
    }
    return false;
}

生成指定长度的随机数字字母字符串

function getRandomStr(len) {    
    var str = "";    
    for( ; str.length < len; str  += Math.random().toString(36).substr(2));    
        return  str.substr(0, len);
}

打乱数组的顺序

方式一
arr.sort(function(){return Math.random()-0.5});
方式二
function shuffle(arr) {    
    var i, 
        j,
        temp;
        for (i = arr.length - 1; i > 0; i--) {
            j = Math.floor(Math.random() * (i + 1));
            temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
        }    
        return arr;    
};

方式一使用了数组的内置排序方法:sort,而方式二是借助了一个中间量,随机数组里的两个值,让它们交换位置。

巧用&& ||

var add_level = 0; 
if(add_step == 5){ 
    add_level = 1; 
} 
else if(add_step == 10){ 
    add_level = 2; 
} 
else if(add_step == 12){ 
    add_level = 3; 
} 
else if(add_step == 15){ 
    add_level = 4; 
} 
else { 
    add_level = 0; 
}//可以写成var add_level = (add_step==5 && 1) || (add_step==10 && 2) || (add_step==12 && 3) || (add_step==15 && 4) || 0;

去除字符串的空格

去除首尾空格

function trim(str){    
    return str.replace(/(^s*)|(s*$)/g, "");
}
trim('  hello world    '); //"hello world"

去除所有空格

function trimAll(str){    return str.replace(/s+/g,"");
}
trimAll('   he ll o  wo  r ld    '); //"helloworld"