비동기 프로그래밍이란 실행 시간이 오래 걸리는 함수를 실행할 때, 해당 함수의 작업이 종료되는것을 기다리지 않게 하는 기술이다.자바스크립트에서는 일부 함수, 예를 들어,fetch(). 다른 서버에 HTTP 요청을 보냄.getUserMedia(). 사용자의 미디어에 접근(권한 요청 필요)setTimeOut(). 지정한 시간만큼 대기처럼 시간이 오래 걸리는 동작이 있기 때문에, 이 때 비동기 프로그래밍이 유용하게 사용될 수 있다.비동기함수비동기함수 setTimeout()은 인자로 숫자 하나를 받으며, 해당 수 ms만큼 작업을 지연시킨다.console.log("프로그램 실행")// 이 함수의 첫 번째 인자로 들어가는 빈 함수는 '콜백'이라고 하는데, 이에 대해서는 후술.setTimeout(() => {}, 3..
함수function 키워드로 선언하며 return 키워드로 값을 반환한다.function func1(var1, var2...) { // do something return}만약 함수가 아무런 값도 반환하지 않거나, return 뒤에 값이 없다면 undefined를 반환한다.매개변수js의 모든 함수는 0개 이상의 이름이 있는 매개변수를 가질 수 있다.만약 미리 선언되지 않은 n개의 '나머지 매개변수(rest parameter)'를 전달받으려면 ...args 키워드를 사용한다.function add(a, b, ...args) { // 1, 2를 제외한 나머지 매개변수는 배열로 args에 전달됨 console.log(args) return a + b;}console.log(add(1, 2, 3, 4, 5..
조건문지정한 조건이 참인 경우 블럭 안의 코드를 실행한다.if ... else제1 분기로 if, 이후 분기는 else if, 기본 분기로 else를 사용한다.if (condition1) { // statement 1} else if (condition2) { // statement 2} else { // default statement}만약 statement가 한 줄 이라면 내려쓰기와 중괄호는 생략할 수 있다.switch특정한 값과의 동등 비교(===)를 통한 분기에 사용된다.switch(var1) { case "A": // 이는 다음과 동일: if (var1 === "A") // statement1 break; case "B": // statement2 break; default: // def..
할당과 산술 연산연산자연산명설명=할당B를 A에 저장함. {A} = {B}+더하기사칙연산-빼기*곱하기/나누기**거듭제곱A의 B승을 구함. {A} ** {B}%나머지A / B의 나머지를 구함.(24 % 7 = 3)관계 비교와 논리 연산이하의 연산자들은 모두 Boolean값을 반환한다.연산자연산명설명, >=크기 비교A와 B의 크기를 비교함.==, !=동등, 부등A와 B가 같은지, 다른지 검사. 단, 형 변환 있음("123"==123은 형 변환에 의해 true)===, !==일치, 불일치A와 B가 같은지, 다른지 검사. 단, 형 변환 없음("123"===123은 false)&&ANDA와 B가 둘 다 참이라면 true 반환.||ORA와 B가 둘 중 하나라도 참이라면 true 반환.기타 연산연산자연산명설명? :삼항..

변수의 선언변수는 다음과 같은 형식으로 선언할 수 있다.[선언 키워드] [변수명] = [값]= (등호)를 사용해 초기화하는게 필수는 아니다.변수의 이름으로는 유니코드 문자셋을 사용하기 때문에 한글로 된 변수명이나 연산자가 아닌 특수문자 만으로도 이름을 사용할 수 있다.변수의 선언 키워드는 다음 세 가지가 있다.var가장 기본적인 변수. 이 키워드로 선언된 변수는 기본적으로 전역 범위를 갖는다. 반복문이나 조건문, 함수 안에서 var를 사용해 선언된 변수는 해당 범위 바깥에서도 사용할 수 있다.let블록 범위 변수. 이 키워드로 선언된 변수는 기본적으로 블록 범위를 갖는다. 반복문이나 조건문, 함수 안에서 let을 사용해 선언된 변수는 해당 범위 바깥에서 사용될 수 없다.const블록 범위 상수형 변수. ..