總結一下經常使用的小工具底層方法javascript
規範化時間顯示java
function formatTime(date){ var year = date.getFullYear() var month = date.getMonth() + 1 var day = date.getDate() var hour = date.getHours() var minute = date.getMinutes() var second = date.getSeconds() function formatNumber(n){ n = n.toString() return n[1] ? n : '0' + n } return [year, month, day].map(formatNumber).join('/') +' '+ [hour, minute, second].map(formatNumber).join(':') }
刪除數組中指定項數組
function removeArrElement(arr, value){ for (var i=0;i<arr.length;i++){ if(arr[i] == value) { arr.splice(i,1); break; } } retrun arr; }
將a中與b索引相同的項的值都替換爲b的值。
function extend(a,b){ for (var key in b){ if (b[key]){ a[key] = b[key] } } return a }
獲取數組中的特定對象(若是key,value相同,就取得第一個的值)工具
function getElementByAttr(arr,key,value) { for(var i=0;i<arr.length;i++){ if(arr[i][key] == value){ return arr[i] } } return null }
將一個對象變爲url傳參的字符串形式url
function objToParams(obj){ var arr = [] for(var key in obj){ if(obj[key]){ arr.push(key + "=" + obj[key]) } } return arr.join("&") }
向對象a中擴增對象b的屬性值3d
function copyProp(a,b){
for(var key in b){
if(b[key]){
if(a[key]){
// 什麼都別作
} else {
a[key] = b[key]
}
}
}
return a
}orm
判斷是否爲手機號對象
function isMobile(mobile) { var reg = /^[0123456789]{11}$/; if (!reg.test(mobile)){ return false } else { return true } }
根據生日判斷週歲blog
function getAgeByBirthday(birthday){ var returnAge; var strBirthdayArr = birthday.split("-"); var birthYear = strBirthdayArr[0]; var birthMonth = strBirthdayArr[1]; var birthDay = strBirthdayArr[2]; var d = new Date(); var nowYear = d.getFullYear(); var nowMonth = d.getMonth() + 1; var nowDay = d.getDate(); if(nowYear == birthYear){ returnAge = 0; //同年 則爲0歲 } else { var ageDiff = nowYear - birthYear; if(ageDiff > 0){ if (nowMonth == birthMonth) { var dayDiff = nowDay - birthDay;//日之差 if (dayDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff; } } else { var monthDiff = nowMonth - birthMonth;//月之差 if (monthDiff < 0) { returnAge = ageDiff - 1; } else { returnAge = ageDiff; } } } else { returnAge = -1;//返回-1 表示出生日期輸入錯誤 晚於今天 } } return returnAge;//返回週歲年齡 }