본문 바로가기

아 덥다/javascript

소수점 자른후 반올림


//ex)  zumStr(0.123456789,5)

//결과 : 0.12346



//str    실수 데이터 0.1234567

//cut    소수점 자를수


function zumSet(str,cut) {

var zum2 ="1";

//몇번째 반올림 할것인가..

var zum3 = "";

//소숫점인 없는경우 반올림되거나 해서 자릿수가 없을때 만들기 위해

if(str == ''){ //빈값 리턴

return str;

}

str+='';

if(str.charAt(0)=='.'){

str = "0"+str;

}

var tempStr = str.split('.');

var returnStr="";

if(tempStr.length == 2){

for(var i=0;i<cut;i++){

zum2 +="0";

zum3 +="0";

}

returnStr = tempStr[0]+'.'+String(tempStr[1]).substring(0,cut);

if(Number(tempStr[1].charAt(cut)) >= 5){

returnStr = (Math.round(eval(str)*eval(zum2))/eval(zum2));

returnStr +="";

tempStr=returnStr.split('.');

if(tempStr.length == 2){

for(var i=tempStr[1].length;i<cut;i++)

tempStr[1] +="0";

return tempStr[0]+"."+tempStr[1]; 

//반올림값

}

//alert(parseFloat(returnStr)+"        "+zum3);

return returnStr+"."+zum3;

//반올림 되었는데 소수점 자릿수가 없는것

}else{

returnStr +="";

tempStr=returnStr.split('.');

if(tempStr.length == 2){

for(var i=tempStr[1].length;i<cut;i++)

tempStr[1] +="0";

return tempStr[0]+"."+tempStr[1];

//반올림 이 아닌값


}

//return returnStr;

}

}

return str; //초기에 수섬점이 아님값

}


'아 덥다 > javascript' 카테고리의 다른 글

중복되지 않는 랜덤숫자  (0) 2013.06.23
예외처리용 패턴  (0) 2013.06.23