본문 바로가기

JavaScript2

Math.min( ...args )함수에서 문자열 타입을 인자로 사용할 수 있을까? 상황 Math.min("115", "12") // 12 입력값에 문자열이 들어간 상황 mdn 문서에서는 Math.min(...args) 함수에서 매개변수는 숫자의 타입만 설명하고 있습니다. Parameters value1, …, valueN Zero or more numbers among which the lowest value will be selected and returned. Math.min() 정적 메서드는 입력 매개변수로 주어진 숫자 중 가장 작은 숫자를 반환하거나 매개변수가 없는 경우 무한대를 반환합니다. MDN에서 말하는 주어진 숫자라는 표현에서 문자열이 들어갈 수 있어서 가장 작은 숫자의 의미를 말그대로 리터럴의 가장 작은 숫자인지 아니면 문자열이 유니코드로 변환해서 각 코드끼리 비교해서.. 2023. 8. 16.
자바스크립트 배열의 인덱스 접근 성능은 일반적인 배열과 비교하여 느릴까? 자바스크립트의 독특한 특징 중 하나는 그 배열입니다. 다른 언어와는 달리, 자바스크립트의 배열은 실제로는 객체입니다. 이것이 의미하는 바는, 배열의 각 요소는 실제로는 객체의 속성인 것이며, 배열 인덱스는 해당 속성의 키에 해당한다는 것입니다. 이 구조가 배열의 인덱스 접근 성능에 어떤 영향을 미칠지 알아보겠습니다. 객체는 일반적으로 해시 테이블을 사용하여 속성에 접근합니다. 속성 이름(또는 키)을 사용하여 값을 빠르게 찾아낼 수 있지만, 숫자 인덱스를 기반으로 한 순차적인 접근에는 최적화되어 있지 않습니다. 자바스크립트의 배열이 해시 테이블 기반의 객체라면, 해시 테이블 기반의 일반 객체에 비해 인덱스 접근이 느려질 것으로 보입니다. 현대의 자바스크립트 엔진, 특히 Google의 V8 엔진은 배열에 대.. 2023. 5. 28.