자바스크립트 내장 객체에는 수학 관련 기능과 속성을 제공하는 수학 객체(Math Object) 존재
날짜 객체와는 다르게 객체를 따로 선언할 필요가 없음. 메소드를 통해 바로 사용이 가능
수학정보 객체
Math.abs(숫자) | 절댓값 반환 |
Math.max( 숫자1, 숫자2, ... 숫자n ) | 가장 큰 값 반환 |
Math.min( 숫자1, 숫자2, ... 숫자n ) | 가장 작은 값 반환 |
Math.pow( 숫자, 제곱값 ) | 거듭제곱값을 반환 |
Math.random() | 0 <= x < 1 구간의 난수를 반환 |
Math.round(숫자) | 소수점 첫쨰 자리에서 반올림 후 정수 반환 |
Math.ceil(숫자) | 소수점 첫쨰 자리에서 무조건 올림 후 정수 반환 |
Math.floor(숫자) | 소수점 첫쨰 자리에서 무조건 내림 후 정수 반환 |
Math.sqrt(숫자) | 제곱근값을 반환 |
Math.PI | 원주율 상수 반환 |
사용 예 1 ( Math.ceil() / Math.floor() / Math.round() / Math.max() )
console.log("==올림==");
console.log( Math.ceil( 5.6 ) );
console.log( Math.ceil( 5.5 ) );
console.log( Math.ceil( 5.4 ) );
console.log("==내림==");
console.log( Math.floor( 5.6 ) );
console.log( Math.floor( 5.5 ) );
console.log( Math.floor( 5.4 ) );
console.log("==반올림==");
console.log( Math.round( 5.6 ) );
console.log( Math.round( 5.5 ) );
console.log( Math.round( 5.4 ) );
console.log("==최대/최소==");
console.log( Math.max( 53, 263, 57, 32));
출력( Math.ceil() / Math.floor() / Math.round() / Math.max() )
사용 예 2 ( Math.random())
난수의 기본범위: 0 <= x < 1 이므로 실수가 출력
console.log( Math.random() );
console.log( Math.random() );
console.log( Math.random() );
실수가 출력됨.
난수의 기본범위인 (0 <= x < 1)에 *10을 곱한다면?
0 * 10 <= X * 10 < 1 * 10 이 되므로, → 0 <= 10X < 10가 되어서, 0 ~ 9의 실수가 출력되나,
parsetInt() 메서드를 사용해서 정수가 출력
console.log( parseInt(Math.random() * 10 ));
console.log( parseInt(Math.random() * 10 ));
console.log( parseInt(Math.random() * 10 ));
정수가 출력됨.
로또 번호인 0 ~ 45 범위의 난수를 생성하게 하려면?
console.log( parseInt((Math.random() * 45) + 1) );
console.log( parseInt((Math.random() * 45) + 1) );
console.log( parseInt((Math.random() * 45) + 1) );
console.log( parseInt((Math.random() * 45) + 1) );
console.log( parseInt((Math.random() * 45) + 1) );
console.log( parseInt((Math.random() * 45) + 1) );
댓글