본문 바로가기

javascript

(4)
[javascript] 구조 분해 할당 (destructuring assignment) 1. 구조 분해 할당 배열이나 객체를 분해하여 저장된 값을 개별 변수에 원하는대로 담을 있는 문법입니다. 2. 배열 분해 할당하기 1) 배열 분해 할당 var arr = ["kim", "park", "lee"]; var [a, , c, d = "empty"] = arr; //배열 구조 분해 할당 console.log(a, c, d); // kim lee empty arr 배열에 "kim", "park", "lee" 값이 들어있고, arr 배열을 구조 분해 할당해서 변수 a, c, d에 삽입합니다. 배열에 순서와 선언된 변수 순서에 맞게 분해 할당됩니다. 해당 자리가 비어있다면, 할당되지 않으며, 값이 할당되지 않았을 경우 디폴트 값을 설정할 수 있습니다. 2) "..." 연산자로 나머지 값 저장하기 va..
[javascript ] new 연산자와 생성자 함수 1. 객체를 만드는 두가지 방법 1) 객체 리터럴을 이용한 방법 객체 리터럴은 {...}을 사용해서 객체를 생성합니다. var obj = { name: "kim", getName: function () { console.log(this.name); } }; console.log(obj.name); obj.getName(); 2) 생성자 함수를 이용하는 방법 1) 관례상 함수 이름의 첫글자는 대문자로 시작합니다. 2) 함수 호출 시 "new" 연산자를 붙여서 실행합니다. function Person(name) { this.name = name; this.showName = function () { console.log(`My name is ${this.name}`); }; } var person = new..
[javascript] this 란 1. this javascript의 this는 다른 언어의 this와 동작하는 방식이 조금 다릅니다. javascript에서 대부분의 경우 this는 함수를 호출하는 방법에 따라 결정됩니다. 즉, 함수를 호출 할 때 마다 this가 가리키는 값이 다를 수 있습니다. 2. 전역에서 this를 호출 했을 경우 console.log(this); // window 전역에서의 this는 기본적으로 window 객체를 가리킵니다. 3. 함수 안에서 this를 호출 했을 경우 function doSomething(){ return this; } console.log(doSomething()); // window console.log(window.doSomething()); // window this를 결정하는 건 대..
[javascript] 실행 컨텍스트(Execution Context) 1. 실행 컨텍스트란? 자바스크립트 코드가 실행되고 있는 구역 또는 범위에 대한 정보를 저장하고 있는 객체입니다. 자바스크립트 엔진은 스크립트 혹은 함수를 실행할 때 새로운 컨텍스트를 만들고, 실행 스택에 쌓습니다. 실행 스택이란 실행 컨텍스트가 생성될 때 마다 실행 컨텍스트를 쌓고 마지막으로 쌓인 실행 컨텍스트 부터 차례대로 실행하는 후입선출 자료구조입니다. 2. 실행 컨텍스트의 종류 1) Global Exception Context 자바스크립트 엔진이 실행될 때 가장 먼저 만드는 실행 컨텍스트입니다. 전역 컨텍스트라고 하며, window 객체를 만들고 전역 컨텍스트의 this를 window 객체로 할당합니다. 그리고 이후에 생성되는 모든 전역 변수, 함수는 window 객체에 저장됩니다. 2) Fun..