본문 바로가기

javascript3

JS, isNaN(), Number.isNaN() [ isNaN() ]매개변수가 숫자인지 검사하는 함수. NaN은 Not a Number을 뜻함주어진 값이 숫자이면 true, 아니면 false 반환isNaN() 메서드는 매개변수를 강제로 Number()로 바꾸는 문제점이 있음 기본적으로 NaN은 원시타입인 숫자타입의 값으로 number type으로 분류되어있음또한 NaN은 자신과 일치하지 않는 유일한 값임 isNaN(NaN); // 참isNaN(undefined); // 참isNaN({}); // 참isNaN(true); // 거짓isNaN(null); // 거짓isNaN(37); // 거짓// 자신비교NaN === NaN; // falsevar nan = NaN;nan === nan; // falseNaN == NaN; // falsenan == na.. 2024. 3. 29.
JS, 최대공약수 최소공약수 구하기 최대공약수를 구할때 기본적으로 반복문을 돌려서 최대공약수를 구할수 있으나 유클리드 호제법을 이용하여 구하면 쉽게 간단하게 구할 수 있음 유클리드 호제법 두 수의 최대공약수를 구하는 알고리즘 2개의 자연수 A, B에 대하여 A를 B로 나눈 나머지를 r이라고 한다면(단, A>B) A와 B의 최대공약수는 B와 r의 최대공약수와 같음 이 성질에 따라 B를 r로 나눈 나머지를 r'을 구하고 다시 r을 r'로 나눈 나머지를 구하는 과정을 반복하여 나머지가 0이 되었을때 나누는 수가 A와 B의 공약수 예시 유클리드 호제법으로 24, 15의 최대 공약수 구하기 24 % 15 = 9 15 % 9 = 6 9 % 6 = 3 6 % 3 = 0 구현 function gcd(a, b){ return (a % b) === 0 ? .. 2023. 11. 3.
JS, use strict / undeclared [ use strict(엄격모드) ] ES5부터 지원하는 use strict는 암묵적인 "느슨한 모드(Sloppy Mode)"를 해제하고 명시적인 "엄격 모드(Strict Mode)"를 사용하는 방법 JS의 제한된 버전을 선택함으로써 런타임시 JS 코드에 대하여 향후 버전의 ECMAScript에서 사용될 수 있는 일부 구문을 제외하는 등보다 엄격한 parsing 및 error handling을 자발적으로 시행하도록 적용함으로써 일반적인 코딩 실수나 안전하지 않은 동작을 포착함 strict 모드에서는 일반적인 JS의 의미에 몇가지를 변경함 JS오류는 아니지만 함정이 될 어떤 일을 오류가 발생하도록 변경하여 제거 코드의 문제를 더 빨리 알리고 소스로 더 빨리 안내하므로 결과적으로 디버깅이 쉬워짐 JS 엔진의.. 2023. 10. 31.