-
Notifications
You must be signed in to change notification settings - Fork 8
Open
Labels
Description
- 生成指定范围内的随机数
例如随机获取颜色rgba的参数值时
function setRandomNum(m,n){
return Math.floor(Math.random()*(n-m+1)) + m;
}- json转url参数
当进行http请求,可能需要把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]';
}- 打乱数组的顺序
方式1:
arr.sort(function () {
return Math.random() - 0.5
})方式2:
function shuffle(arr) {
var i,j,templ
for(var 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;
}- 去除字符串的空格
function trim(str) {
return str.replace(/(^\s*)|(\s*$)/g,"");//去除首尾空格
}
function trim(str) {
return str.replace(/(\s+)/g,"");//去除所有空格
}- 获取数组中的最大值或最小值
function maxAndMin(arr) {
return {
max: Math.max.apply(null,arr.join(',').split(',')),
min: Math.min.apply(null,arr.join(',').split(','))
}
}- Date日期时间部分
//到某一个时间的倒计时
//getEndTime('2017/7/22 16:0:0')
//"剩余时间6天 2小时 28 分钟20 秒"
function getEndTime(endTime){
var startDate=new Date(); //开始时间,当前时间
var endDate=new Date(endTime); //结束时间,需传入时间参数
var t=endDate.getTime()-startDate.getTime(); //时间差的毫秒数
var d=0,h=0,m=0,s=0;
if(t>=0){
d=Math.floor(t/1000/3600/24);
h=Math.floor(t/1000/60/60%24);
m=Math.floor(t/1000/60%60);
s=Math.floor(t/1000%60);
}
return "剩余时间"+d+"天 "+h+"小时 "+m+" 分钟"+s+" 秒";
}- 去除字符串空格
//去除空格 type 1-所有空格 2-前后空格 3-前空格 4-后空格
function trim(str,type){
switch (type){
case 1:return str.replace(/\s+/g,"");
case 2:return str.replace(/(^\s*)|(\s*$)/g, "");
case 3:return str.replace(/(^\s*)/g, "");
case 4:return str.replace(/(\s*$)/g, "");
default:return str;
}
}