生成指定范围内的随机数 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"