목록JavaScript & Node.js (30)
한 걸음씩 기록하며
while loop : while the condition is truthy, body code is executed while (조건문) { 실행문 } // ex let i = 3; while (i > 0) { console.log(`while: ${i}`); i--; } do-while loop do while loop, body code is executed first, then check the condition. 조건문을 먼저 실행하고 싶을 때 쓴다. do { 실행문 } while(조건문); // ex let i = 1; do { console.log(`do while: ${i}`); i --; } while (i > 0); for loop for loop, for(begin; condition..
If operators 파이썬과 동일 if (조건문) { 실행문 } else if (조건문) { 실행문 } else { 실행문 } Ternary operator : ? operator if를 간단하게 쓰는 것 많이 사용하면 가독성이 떨어지니 간단할 때만 작성 function (조건문 ? 실행문); // ex) console.log (name === 'ellie' ? 'yes' : 'no') switch operators 타입스크립트에서 정해져있는 타입을 검사하거나 인원 비슷한 것을 검사할 때는 사용하면 가독성이 좋음 switch (변수명) { case 조건 : 실행문 break; case 조건 : 실행문 break; //ex const browser = 'Chrome'; switch (browser) {..
1. String Concatenations (’A’ + ‘B’) → ‘AB’ (’1’ + 2) → 12 숫자형이 문자형을 만나면 문자형으로 변한다. String Literals ${1 + 2} -> 3 백틱을 이용 2. Numeric Operators : add : substract / : divide : multiply % : remainder / 나머지 값만 리턴 ** : exponentiation / 제곱 3. Increment and decrement operators ++ : increment operator — : decrement operator 1) preIncrement (decrement도 동일) let A = 3; const B = ++A; console.log(A); // 4 co..
* Immutable vs Mutable - Immutable Data type 데이터 자체를 변경하지 못하는 것 primitive types, frozen objects (i.e object.freeze()) - Mutable Data type all objects JS에서 모든 array는 변경 가능 (다른 언어와 차이점) 1. 변수 (variable) / mutable / rw(read/write) 변수 : 변경될 수 있는 값 (mutable) let : ES6부터 추가됨 let name = ‘haksae’ name = ‘wonssi’ Block scope { }을 사용하면, 블럭 안에 있는 코드는 블럭 밖에서 볼 수 없음. 블럭 밖에서 접근해도 아무 값도 나오지 않는다. global scope 블..
HTML에서 JS를 포함할 때 어떻게 포함하는게 효율적인가? 1. head 안에 스크립트를 포함 브라우저가 한줄씩 파싱하다가 CSS와 병합하면서 DOM 요소로 병합 (parsing HTML) 파싱하다가, 필요한 자바 스크립트 파일을 다운받아서 실행 (fetching js, executting js) 단점 : js 파일이 엄청 크면, 출력까지 오래 걸릴 수 있음 이러한 방식으로 보통 하지 않음 2. body 안에 스크립트를 포함 (주로 뒤에) JS를 받기 전에도 페이지가 준비가 되어서, 사용자가 먼저 페이지에 컨텐츠를 볼 수 있음 단점 : 웹사이트가 자바스크립트에 의존적이라면 사용자가 의미있는 컨텐츠를 보기 위해서는 오래 기다려야하는 단점이 있다. 3. head+async async는 boolean 타입의..
1. 용어 정리 동기(Synchronous) 동기는 요청과 동시에 그 결과가 일어나는 뜻이다. 즉 함수를 호출 했을 때 이 함수의 결과를 호출한 쪽에서 처리하면 동기 비동기(Asynchronous) 비동기는 요청과 그 결과가 동시에 일어나지 않는 뜻이다. 즉 함수를 호출 했을 때 함수의 결과를 호출한쪽에서 처리하지 않을 수도 있다. 블로킹(Blocking) 블로킹은 자신의 수행결과가 끝날 때까지 제어권을 갖고 있는 것을 의미한다. 즉 연산이 끝날때까지 다른일을 수행하지 않고 대기하는 방식 논블로킹(Non-blocking) 자신이 호출되었을 때 제어권을 바로 자신을 호출한 쪽으로 넘기며, 자신을 호출한 쪽에서 다른 일을 할 수 있도록 하는 것을 의미합니다. 즉 연산이 끝날 때 까지 대기하는 것이 아니라 다..