JavaScript(6)
-
[모던 자바스크립트 Deep Dive] 22장. this
1. this 키워드 - this 는 자신이 속한 객체 또는 자신이 생성할 인스턴스를 가리키는 자기 참조 변수. this 를 통해 자신이 속한 객체 또는 자신이 생성할 인스턴스의 프로퍼티나 메서드를 참조할 수 있다. - this 는 자바스크립트 엔진에 의해 암묵적으로 생성. 코드 어디서든 참조 가능. - this 가 가리키는 값, this 바인딩은 함수 호출 방식에 의해 동적으로 결정된다. // this 는 어디서든지 참조 가능하다. console.log(this); // window function square(number) { console.log(this); // window return number * number; }; square(2); const person = { name : 'Lee', ..
2023.03.14 -
[모던 자바스크립트 Deep Dive] 23장. 실행 컨텍스트
1) 소스코드의 타입 - 소스 코드를 구분하는 이유는 소스 코드의 타입에 따라 실행 컨텍스트를 생성하는 과정과 관리 내용이 다르기 때문! (1) 전역 코드 (Global code) : 전역에 존재하는 소스 코드 (2) 함수 코드 (Function code) : 함수 내부에 존재하는 소스 코드 (3) eval 코드 (Eval Code) : 빌트인 전역 함수인 eval 함수에 인수로 전달되어 실행되는 소스 코드 (4) 모듈 코드 (Module Code) : 모듈 내부에 존재하는 소스코드. 2) 소스코드의 평가와 실행 소스코드의 평가와 소스코드의 실행 과정으로 나누어 처리. 아래의 소스 코드가 실행된다고 생각. var x; x = 1; (1) 소스 코드 평가 과정 ㄱ) 변수 선언문 var x;를 실행. 이때 ..
2023.03.07 -
[Vanilla JS] - 4. 배열의 특정 값 삭제하기.
배열안의 특정 값을 삭제하는 방법에 대해 알아봤다. 1. 배열 전체 값 삭제하기. 1) 값이 있던 배열을 빈 배열로 할당하기. let arr = ["a", "b", "c"] arr = []; 2) 값이 있던 배열의 길이를 0으로 할당하기. let arr = ["a", "b", "c"] arr.length = 0; 2. 배열의 첫번째 값 삭제하기. - shift() let arr1 = [1,2,3] arr1.shift(); /* arr1 = [2,3] */ 3. 배열의 뒤에서 삭제하기. 1) 배열의 길이로 삭제하기 let arr1 = [1,2,3,4] arr1.length = 2; /*arr1 = [1,2] */ 2) pop() let arr1 = [1,2,3,4,5]; arr1.pop(); /* arr1..
2022.01.14 -
[Vanilla JS] - 3. parentNode vs parentElement
parentNode 와 parentElement 전에 node 와 element의 차이점을 먼저 짚고 넘어가자. 1. node와 element 1) node HTML DOM을 node라고 부르며 계층적 단위 정보를 저장. HTML DOM은 이러한 node들을 정의하고, 그들 사이의 관계를 설명해주는 역할. node들의 집합을 node tree(노드 트리) 라고 부름. 자바스크립트에서는 HTML DOM을 이용하여 노드 트리에 포함된 모든 노드에 접근 가능. 2) element HTML Tag를 말함. 3) 예시자료 테스트입니다. 위의 예시 코드를 볼 때, 모든 태그노드와 텍스트노드를 node라 하고, 텍스트노트를 제외한 태그만을 element라 함. 2. parentNode 와 parentElement 1..
2022.01.13 -
[Vanilla JS] - 2. 원하는 문자 앞뒤로 채워넣기 - padStart() , padEnd()
1. padStart(maxLength, "") - String 형태의 변수 뒤에 사용. 최대길이까지 해당 문자를 앞에서부터 채움. - 예시) "1".padStart(2, "0") --> 01 출력. 2. padEnd(maxLength, "") - padStart와 반대. - 예시) "1".padEnd(2, "0") --> 10 출력. ※ 주의사항 : String 형태의 경우에만 사용가능.
2022.01.12