JavaScript/모던 자바스크립트 딥다이브
-
this가 동작하는 원리와 용법JavaScript/모던 자바스크립트 딥다이브 2023. 2. 24. 15:08
position을 어떻게 사용하는지 알려주세요. CSS에서 position 속성은 HTML 문서 상에서 요소가 배치되는 방식을 결정합니다. 많은 경우, position 속성은 요소의 정확한 위치 지정을 위해서 top, left, bottom, right 속성과 함께 사용됩니다. position: static position 속성을 별도로 지정해주지 않으면 기본값인 static이 적용됩니다. position 속성이 static인 요소는 HTML 문서 상에서 원래 있어야하는 위치에 배치됩니다. 이 말은 요소들이 HTML에 작성된 순서 그대로 브라우저 화면에 표시가 된다는 것을 뜻하며, 따라서 top, left, bottom, right 속성값은 position 속성이 static일 때는 무시됩니다. posi..
-
[모던 자바스크립트 딥다이브] 19장 프로토타입JavaScript/모던 자바스크립트 딥다이브 2022. 12. 2. 18:19
상속과 프로토타입 상속은 객체지향 프로그래밍의 핵심 개념으로, 어떤 객체의 프로퍼티 또는 메서드를 다른 객체가 상속받아 그대로 사용할 수 있는 것을 말한다. 자바스크립트는 프로토타입을 기반으로 상속을 구현하여 불필요한 중복을 제거한다. // 생성자 함수 function Circle(radius) { this.radius = radius; } // Circle 생성자 함수가 생성한 모든 인스턴스가 getArea 메서드를 // 공유해서 사용할 수 있도록 프로토타입에 추가한다. // 프로토타입은 Circle 생성자 함수의 prototype 프로퍼티에 바인딩되어 있다. Circle.prototype.getArea = function () { return Math.PI * this.radius ** 2; }; /..
-
[모던 자바스크립트 딥다이브] 15장 let, const 키워드와 블록 레벨 스코프JavaScript/모던 자바스크립트 딥다이브 2022. 11. 26. 13:45
var 키워드의 변수 호이스팅 // 이 시점에는 변수 호이스팅에 의해 이미 foo변수가 선언 // 변수 foo는 undefined로 초기화 console.log(foo); // undefined // 변수에 값을 할당 foo = 123; console.log(foo); // 123 // 변수 선언은 런타임 이전에 자바스크립트 엔진에 의해 암묵적으로 실행 var foo; let 키워드 let 키워드로 이름이 같은 변수를 중복 선언하면 문법 에러가 발생한다. 또 let 키워드로 선언한 변수는 모든 코드 블록을 지역 스코프로 인정하는 블록 레벨 스코프를 따른다. let foo = 1; { let foo = 2; let bar = 3; } console.log(foo); // 1 console.log(bar);..
-
[모던 자바스크립트 딥다이브] 13장 스코프JavaScript/모던 자바스크립트 딥다이브 2022. 11. 26. 11:39
스코프란? 모든 식별자는 자신이 선언된 위치에 의해 다른 코드가 식별자 자신을 참조할 수 있는 유효범위가 결정된다. 이를 스코프라 한다. 즉 스코프는 식별자가 유효한 범위를 말한다. 다른 말로 스코프는 자바스크립트 엔진이 식별자를 검색 및 결정할 때 사용하는 규칙으로 이해할 수 있다. 스코프 내에서 식별자는 유일해야 하지만 다른 스코프에는 같은 이름의 식별자를 사용할 수 있다. 이러한 측면에서 스코프는 네임 스페이스다. 스코프 체인 전역에서 선언된 변수는 전역 스코프를 갖는 전역 변수이고, 지역에서 선언된 변수는 지역 스코프를 갖는 지역 변수다. 전역 변수는 어디서든지 참조할 수 있고, 지역 변수는 자신의 지역 스코프와 하위 지역 스코프에서 유효하다. 여기서 지역이란 함수 몸체 내부를 말하는 데, 13장..