자바스크립트 반올림, 올림, 버림

자바스크립트에 내장함수가 있지만 원하는 결과가 안나옵니다. 특히나 반올림 같은 경우는 말이죠. 만들어 써야 합니다.

아래를 참고하세요.

주욱 긁어서 사용하시거나 필요한 부분만 떼다가 사용하세요. 예제가 포함되어 있으니 잘 떼서 사용하시구요.



<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> 자바스크립트 반올림, 올림, 버림 </title>
<script type="text/javascript">
<!--
// 지정자리 반올림 (값, 자릿수)
function Round(n, pos) {
	var digits = Math.pow(10, pos);

	var sign = 1;
	if (n < 0) {
		sign = -1;
	}

	// 음수이면 양수처리후 반올림 한 후 다시 음수처리
	n = n * sign;
	var num = Math.round(n * digits) / digits;
	num = num * sign;

	return num.toFixed(pos);
}

// 지정자리 버림 (값, 자릿수)
function Floor(n, pos) {
	var digits = Math.pow(10, pos);

	var num = Math.floor(n * digits) / digits;

	return num.toFixed(pos);
}

// 지정자리 올림 (값, 자릿수)
function Ceiling(n, pos) {
	var digits = Math.pow(10, pos);

	var num = Math.ceil(n * digits) / digits;

	return num.toFixed(pos);
}

function calcRound(){
	var i = document.getElementById("aa").value;
	document.getElementById("result").innerHTML = Round(i, 1) ;
}
function calcCeil(){
	var i = document.getElementById("aa").value;
	document.getElementById("result2").innerHTML = Floor(i, 1) ;
}
function calcFloor(){
	var i = document.getElementById("aa").value;
	document.getElementById("result3").innerHTML = Ceiling(i, 1) ;
}
//-->
</script>
</head>

<body>
<input type="text" id="aa"> <br/>
<button onclick="calcRound()">반올림</button> <br/>
<button onclick="calcCeil()">올림</button> <br/>
<button onclick="calcFloor()">버림</button> <br/>
반올림 값 : <div id="result"></div> <br/>
올림 값 : <div id="result2"></div> <br/>
버림 값 : <div id="result3"></div> <br/>
</body>
</html>


Comment List

  1. 창민 2012.11.01 17:48
    감사합니다. 잘쓸게요.

Write Comment