본문 바로가기

Language/JavaScript28

this this 키워드객체는 상태를 나타내는 프로퍼티와 동작을 나타내는 메서드를 하나의 논리적 단위로 묶은 복합적인 자료구조입니다. 동작을 나타내는 메서드는 프로퍼티를 참조하고 변경할 수 있어야 하며, 메서드가 자신이 속한 객체의 프로퍼티를 참조하려면 먼저 자신이 속한 객체를 가리키는 식별자를 참조할 수 있어야 합니다. 이때, this는 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 식별자, 즉 자기 참조 변수(self-referencing variable)입니다.this는 자바스크립트 엔진에 의해 암묵적으로 생성되며, 코드 어디서든 참조할 수 있습니다. 단, this가 가리키는 값(this 바인딩)은 함수 호출 방식에 의해 동적으로 결정됩니다.this 바인딩바인딩은 식별자와 값을 연결하는 과정을 의.. 2025. 3. 15.
빌트인 객체 자바스크립트 객체의 분류자바스크립트 객체는 크게 3가지로 분류할 수 있습니다.표준 빌트인 객체 - 전역 객체의 프로퍼티로 공통적으로 제공(Object, Array, JSON 등)호스트 객체 - 브라우저, 노드 환경에 따라 달라짐사용자 정의 객체 - 사용자가 직접 정의한 객체원시값과 래퍼 객체원시값에 대해 객체처럼 마침표 포기법이나 대괄호 표기법으로 접근하면 자바스크립트 엔진이 일시적으로 원시값을 연관된 객체로 변환한 뒤, 프로퍼티 접근이나 메서드 호출 이후 다시 원시값으로 되돌립니다. 문자열, 숫자, 불리언 값에 대해 객체처럼 접근할 때 생성되는 임시 객체를 래퍼 객체(wrapper object)라 합니다.전역 객체자바스크립트 엔진은 코드 실행 전에 가장 먼저 전역 객체(Global Object)를 생성.. 2025. 3. 15.
strict mode 자바스크립트는 암묵적 전역 등 잠재적인 오류를 발생시킬 수 있는데, 이러한 오류를 방지하기 위해 사용하는 환경이 strict mode입니다.strict mode의 적용전역 선두 혹은 함수 선두에 ‘use strict’; 추가합니다. strict mode의 적용은 즉시 실행 함수로 감싼 스크립트 단위로 적용하는 것이 권장됩니다. 전역에 적용하는 경우에는 non-strict mode인 서드파티 라이브러리가 될 수 있고, 함수 단위로 적용하는 경우에는 함수별로 일관되게 관리할 수 없기 때문입니다.(function () { "use strict"; console.log("즉시 실행 함수 호출");})();strict mode가 발생시키는 에러strict mode를 적용하면 대표적으로 다음 에러들을 방.. 2025. 3. 15.
함수와 일급 객체 일급 객체자바스크립트의 함수는 아래 나열된 일급 객체의 조건을 모두 만족합니다. 함수가 일급 객체라는 것은 객체와 동일하다는 것, 즉 값과 동일하게 취급할 수 있다는 것을 의미합니다. 따라서 값을 사용할 수 있는 곳(변수 할당문, 객체의 프로퍼티 값, 배열의 요소, 함수의 호출 인수, 함수 반환문)에 리터럴로 정의할 수 있습니다.일급 객체의 조건무명의 리터럴로 생성할 수 있다. 즉, 런타임에 생성이 가능하다.변수나 자료구조(객체, 배열 등)에 저장할 수 있다.함수의 매개변수에 전달할 수 있다.함수의 반환값으로 사용할 수 있다.함수 객체의 프로퍼티함수 객체의 데이터 프로퍼티로는 다음 5가지가 있습니다. arguments, caller, length, name, prototypeargumentsargumen.. 2025. 3. 15.