-
[코드스테이츠 TIL] Number, Math methodStudy/JavaScript 2019. 11. 4. 15:18반응형
[ Number ]
Number.isInteger(value)
- arguments : 정수인지, 아닌지 여부를 검사할 값
- return value : 정수를 판단한 결과 (Boolean)
Number.isInteger(0); // true Number.isInteger(1); // true Number.isInteger(-100000); // true Number.isInteger("10"); // false Number.isInteger(0.1); // false Number.isInteger(Math.PI); // false
parseInt(value) / parseFloat(value)
- arguments: 형변환(type casting)하기 위해 파싱될 값
- return value: 정수 / 소숫점 숫자
parseInt("15"); // 15 parseInt("15.123"); // 15 parseInt("15*3"); // 15 parseInt("-15"); // -15 parseInt("Hello") // NaN parseFloat("3.14"); // 3.14
num.toFixed([digits])
- arguments: 소숫점 뒤에 나타낼 자릿수 (optional, 기본값은 0)
- return value: 숫자를 나타내는 문자열
var numObj = 12345.6789; numObj.toFixed(); // '12346': 반올림하며, 소수 부분을 남기지 않습니다. numObj.toFixed(1); // '12345.7': 반올림합니다. numObj.toFixed(6); // '12345.678900': 빈 공간을 0으로 채웁니다.
[ Math ]
Math.min([value1[, value2[, ...]]])
Math.max([value1[, value2[, ...]]])
- arguments: 숫자
- return value: 주어진 숫자 중 가장 작은 값 / 큰 값
console.log(Math.min(2, 3, 1)); // 1 console.log(Math.min(-2, -3, -1)); // -3 console.log(Math.max(1, 3, 2)); // 3 console.log(Math.max('hello', 'world')); // NaN // 함수 apply() 활용 function getMaxOfArray(numArray) { return Math.max.apply(null, numArray); } // 배열 reduce() 활용 var arr = [1,2,3]; var max = arr.reduce(function(a, b) { return Math.max(a, b); }); // spread operator 활용 var arr = [1, 2, 3]; var max = Math.max(...arr);
Math.floor(value)
Math.round(value)
- arguments: 숫자
- return value: 주어진 숫자의 내림 값 / 반올림 값
console.log(Math.floor( 45.95)); // 45 console.log(Math.floor(-45.95)); // -46 console.log(Math.round( 20.5 )); // 21 console.log(Math.round(-20.5 )); // -20
Math.random()
- arguments: 없음
- return value: 0과 1 사이의 난수를 반환
console.log(Math.random()); // 0.19332486207208088
// 특정 범위의 랜덤 정수 반환하기 function getRandomInt() { return Math.floor(Math.random() * 10) } // 0부터 10까지의 랜덤 정수 반환 //10 자리에 n 넣으면 0부터 n까지의 랜덤 정수 반환
//일정한 길이의 임의의 글자 리턴하기 function makeid() { var text = ""; var possible = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; for (var i = 0; i < 10; i++) text += possible.charAt(Math.floor(Math.random() * possible.length)); //str.charAt : charAt() 함수는 문자열에서 특정 인덱스에 위치하는 유니코드 단일문자를 반환 return text; } console.log(makeid()); //10자리의 임의의 글자 리턴
Math.abs(x)
- arguments: 숫자
- return value : x의 절대값
function difference(a, b) { return Math.abs(a - b); } console.log(difference(3, 5)); // expected output: 2 console.log(difference(5, 3)); // expected output: 2 Math.abs('-1'); // 1 Math.abs(-2); // 2 Math.abs(null); // 0 Math.abs(''); // 0
Math.sqrt(x)
- arguments: 숫자
- return value : x의 제곱근, x가 음수일 경우엔 NaN 리턴
Math.sqrt(9); // 3 Math.sqrt(2); // 1.414213562373095 Math.sqrt(1); // 1 Math.sqrt(0); // 0 Math.sqrt(-1); // NaN Math.sqrt(-0); // -0
Math.pow(base, exponent)
- arguments: base 밑, exponent 지수
- return value : base의 제곱 값
// 간단한 예시 Math.pow(7, 2); // 49 Math.pow(2, 10); // 1024 // 지수가 소수나 분수 Math.pow(4, 0.5); // 2 (제곱근 4) Math.pow(8, 1/3); // 2 (세제곱근 8)
반응형'Study > JavaScript' 카테고리의 다른 글
[코드스테이츠 TIL] Scope 변수의 범위 (0) 2019.11.05 [코드스테이츠 TIL] Complexity 복잡도 (0) 2019.11.04 [코드스테이츠 TIL] 배열 Array method (0) 2019.11.02 [코드스테이츠 TIL] 문자열 String method , Debug (0) 2019.10.31 [코드스테이츠 TIL] 자바스크립트 배열, 반복문, 객체와 method (0) 2019.10.10