console.log(Math.round(2.5)); //3
console.log(Math.round(2.49)); //2
console.log(Math.round(2)); //3
console.log(Math.round(2.82)); //3
console.log(Math.ceil(2.5)); //3
console.log(Math.ceil(2.49)); //3
console.log(Math.ceil(2)); //2
console.log(Math.ceil(2.82)); //3
console.log(Math.floor(2.5)); //2
console.log(Math.floor(2.49)); //2
console.log(Math.floor(2)); //2
console.log(Math.floor(2.82)); //2
var randomNumber = Math.random();
console.log(randomNumber);
Math.random()의 경우 0부터 0<1의 난수를 반환하므로, 랜덤값을 정수화 시키기 위해서
Marh.floor()을 사용하여 정수 이하의값을 버리고, 원하는 수를 * 하여 0부터 그전의 숫자값까지의 정수를 반환받을 수 있다.
Math.floor(Math.random() * 10);
//랜덤으로 값이 계속 바뀌는 상황에서 정수화 시켜서 값을 받음 0 ~ 9 사이의 값을 정수로 받음
Math.floor(Math.random() * 10) +1;
//랜덤값에서 정수의 0 ~ 9 를 10까지 반환받음
//특정 숫자범위안에서 값을 반환받기위해서는
/*
// 50 부터 100 까지 임의의 정수 반환
// 1을 더해주는 이유는 Math.random이 0 부터 1 미만의 난수를 반환하기 때문
// Math.floor(Math.random() * 50) 은 0 부터 49까지의 임의의 정수를 반환
// 1을 더하지 않으면 50부터 99까지의 임의의 정수를 반환하기 때문이다
// 100을 포함하는게 아니라..
*/
50 + (Math.floor(Math.random() * 50) +1);
📌 Math.pow(x, y) - x값을 y의 거듭제곱으로 반환
📌 Math.sqrt(x) - x의 제곱근을 반환
📌 Math.abs(x) - x의 절대(양수) 값 반환
📌 Math.min(인수 목록) - 인수 목록에서 최소값을 반환
📌 Math.max(인수 목록) - 인수 목록에서 최대값을 반환
앞으로 랜덤함수를 쓸 일이 정말 많습니다.
그런데 Math.random()으로는 내가 원하는 범위의 랜덤수를 얻을 수가 없습니다.
항상 0.0000000000000000에서 0.9999999999999999 사이 값에서만 return해주기 때문이죠.
최소(min), 최대값(max)을 받아 그 사이의 랜덤수를 return하는 함수를 구현해주세요.
- 함수는 짧지만, 이번에는 수학의 뇌를 조금 써야 하는 assignment입니다.
function getRandomNumber (min, max) {
return min + (Math.floor(Math.random() * (max - min))+1);
}
console.log(getRandomNumber(5,40))