總結篇-小案例(未完待續...)

動態格式化時間戳

function getRenderTime(time,icon){
    var d=new Date();
    if(typeof(time)!="undefined"){
        d=new Date(time);
    } 
    var y=d.getFullYear();
    var M=(d.getMonth()+1>9)?(d.getMonth()+1):"0"+(d.getMonth()+1);
    var dd=(d.getDate()>9)?(d.getDate()):"0"+(d.getDate());
    var h=(d.getHours()>9)?(d.getHours()):"0"+(d.getHours());
    var m=(d.getMinutes()>9)?(d.getMinutes()):"0"+(d.getMinutes());
    var s=(d.getSeconds()>9)?(d.getSeconds()):"0"+(d.getSeconds());
    if(icon==0){
        return (h+":"+m+":"+s)
    }else if(icon==1){
        return (y+"-"+M+"-"+dd)
    }else if(icon==2){
        return (y+"-"+M+"-"+dd+" "+h+":"+m+":"+s)
    }else{
        return (y+"-"+M+"-"+dd)
    }
}
getRenderTime();                  //"2018-12-11"
getRenderTime(23413214412,0);     //"07:40:14"
getRenderTime(23413214412,1);     //"1970-09-29"
getRenderTime(23413214412,2);     //"1970-09-29 07:40:14"

格式化數字爲千分逗號&保留指定位數小數

function getFloatNum(num,n){
    var needNum=Number(num).toFixed(n);
    return needNum.replace(/(\d)(?=(\d{3})+\.)/g,'$1,')
}
getFloatNum(123.456,2);    //"123.46"
getFloatNum(123.456,4)     //"123.4560"

字符串的hash(哈希)值

function hashCode(str){  
    var h = 0, off = 0;   var len = str.length;  
    for(var i = 0; i < len; i++){  
        h = 31 * h + str.charCodeAt(off++);  
    }  
    var t=-2147483648*2;  
    if(h>2147483647){  
        h+=t  
    }  
    return h;  
}  

字符串出現所有下標

function getAllIndex(str,chars){
    var arr=[];
    for(var i=0;i<str.length;i++){
        if(str.substring(i,i+1)==chars){
            arr.push(i)
        }
    }
    return arr
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章