js取整

function getNum(num,digit){  //num原始数据,digit取整位数
    var return_num = '';
    //js做运算的时候会导致失真,用字符串来处理,例如 0.14"*100 = 14.000000000000002,这个涉及到二进制,这里就不展开
    var arr = num.split(".");
    if(arr.length == 2){
        if(arr[1].length < digit){                               
            if(arr[0].substr(0,1) == '0'){
                return_num = arr[1] * Math.pow(10,(digit-arr[1].length));
            }else{
                return_num = arr[0]+arr[1] * Math.pow(10,(digit-arr[1].length));
            }
        }else{
            if(arr[0].substr(0,1) == '0'){
                return_num = arr[1].substr(0,digit)+'.'+(arr[1].substr(digit));
            }else{
                return_num = arr[0]+arr[1].substr(0,digit)+'.'+arr[1].substr(digit);
            }
        }
    }else{
        return_num = num * Math.pow(10,digit);
    }
    return_num = Math.ceil(return_num)/Math.pow(10,digit);
    return return_num;
}

你可能感兴趣的:(js,js,js计算)