STUDY/JavaScript(100)
-
단축평가 논리연산자 && ||, null병합 ??, 옵셔널체이닝 ?
단축평가논리합 `||`, 논리곱 `&&` 연산자는 왼쪽부터 오른쪽으로 평가를 진행하는데,중간에 평가 결과가 나오면 오른쪽 끝까지 가지 않고 평가 결과를 반환해버린다.논리합, 논리곱 연산자 표현식은 언제나 2개의 피연산자 중 어느 한 쪽으로 평가된다. 이를 단축평가(Short Circuit Evaluation)라고 하며, 피연산자의 타입을 고려하지 않고 그대로 반환한다. 단축 평가를 활용하면 아래와 같은 코드가 가능해진다."apple" || "banana"; // "apple""apple" && "banana"; // "banana" 논리합 ( || , A or B)A가 `true`면 A를 반환한다.논리합 연산자는 두 피연산자 중 하나만 `true`여도 `true`를 반환한다.따라서 앞의 항 A의 값..
2024.05.14
-
Element: insertAdjacentHTML()
insertAdjacentHTML()인터페이스의 insertAdjacentHTML() 메서드는 지정된 텍스트를 HTML 혹은 XML로 파싱하고 결과 노드들을 지정된 위치의 DOM 트리에 삽입합니다. SyntaxinsertAdjacentHTML(position, text) position요소와 상대적인 위치를 나타내는 문자열입니다. 다음 문자열 중 하나여야 합니다.beforebegin요소 이전에 위치합니다. 오직 요소가 DOM 트리에 있고 부모 요소를 가지고 있을 때만 유효합니다.afterbegin요소 바로 안에서 처음 자식 이전에 위치합니다.beforeend요소 바로 안에서 마지막 자식 이후에 위치합니다.afterend요소 이후에 위치합니다. 오직 요소가 DOM..
2024.04.15
-
vanillaJS module
보호되어 있는 글입니다.
2024.01.09
-
async, await
async, await async, await을 사용해서 비동기 프로그래밍을 할 수 있다. async 키워드를 사용해서 함수를 선언하게 되면 함수 내부에서 await 키워드를 사용할 수 있다. await 키워드는 promise로 만든 함수에만 사용할 수 있다. await을 사용하면 다음 코드를 실행하지 않고 promise를 기다린다. 하지만 스레드를 막고 있지는 않아서 함수 외부의 다른 코드는 실행된다. const getPromise = (seconds) => new Promise((resolve, reject)=>{ setTimeout(()=>{ resolve('완료'); }, seconds * 1000); }); // async 함수 선언 // async 함수 키워드로 함수를 선언하면 함수 내부에서 ..
2024.01.04
-
Callback Hell and Promise
Callback 다시 불리다. 정의 되고 나서 바로 실행되는게 아니라 , 특정 작업이 끝난 후 다시 불려지는 함수가 콜백함수다. setTimeout()의 첫 번째 인자가 바로 콜백함수다. function waitAndRun(){ setTimeout(()=>{ console.log('끝'); }, 2000); } console.log(waitAndRun()); // 2초를 기다린 후에 '끝' 문자 출력 waitAndRun() 함수를 실행하게 되면 2초를 기다린 후 '끝'이라는 문자를 출력하게 된다. waitAndRun() 함수는 setTimeout()을 한 번만 실행하고 있다. 그런데 만약 2초 후에 '끝'을 출력하고, 또 2초 후에 '끝'을 출력하고, ... 또 2초 후에 '끝'을 출력하고 싶다면 Pro..
2024.01.04
-
Async Programming
자바스크립트는 싱글 스레드 프로그램이기 때문에 한번에 단 한개의 작업만 할 수 있다. 이러한 싱글 스레드의 단점을 Async Programming을 이용해 많은 부분 극복할 수 있다. Thread란? CPU를 살 때 '8코어 16스레드' 와 같인 스펙이 적혀있는 것을 볼 수 있다. 8개의 코어가 각각 2개의 스레드를 소유하고 있어서 16개의 스레드를 사용할 수가 있다는 뜻이다. 스레드는 가장 작은 단위의 Working Unit이라고 보면 되는데, 쉽게 말해서 16스레드 라고 하면 동시에 작업할 수 있는 것이 16개라는 뜻이다. 스레드가 몇개 있느냐는 CPU가 동시에 몇개의 작업을 연산할 수 있는가를 의미한다. JavaScript는 Single Threaded다 자바스크립트는 어느 한 순간에 동시에 단 하..
2024.01.04