반응형 WEB front-end/Javascript14 async/await * async - 함수앞에 async라고 붙이면 함수는 항상 약속을 반환한다. async function a(){ return 1; } a().then.alert(); * await - Javascript가 약속이 완료 될 때까지 기다리게 하고 결과를 반환 함 async function a(){ let promise = new Promise((resolve, reject) => { setTimeout( () => resolve("ok"), 1000) }); let result = await promise; // promise의 실행이 끝날때 까지 기다림 console.log(result); } a(); 2022. 5. 27. promise * Promise 객체는 비동기 작업이 맞이할 미래의 완료 또는 실패와 그 결과값을 나타냄. 미래의 어떤 시점에 결과를 제공하겠다는 약속(promise)를 반환 함. Promise를 사용하여 작업이 끝났을때 호출하는 callback 함수 대신 .then 메소드를 사용하여 명확하게 코딩할 수 있다. * 상태 - 대기(pending) : 이행하지도, 거부하지도 않은 초기 상태 - 이행(fullfiled) : 연산이 성공적으로 완료됨. - 거부(rejected) : 연산이 실패함 * 생성 - new Promise((resolve, reject) => { }) * 사용법 - 아래와 같이 변수로 선언하면 선언된 프로미스는 즉시 실행된다. let a = new Promise((resolve, reject) => {.. 2022. 5. 27. 호이스팅(hoisting) Javascript에서 호이스팅이란 , 인터프리터가 변수와 함수의 메모리 공간을 선언 전에 미리 할당하는 것을 의미. var로 선언한 변수의 경우 호이스팅 시 undefined로 변수를 초기화 let, const로 선언한 변수의 경우 호이스팅 시 초기화 하지 않음 ==> 호이스팅 안되는거나 마찬가지임. Javascript는 초기화를 제외한 선언만 호이스팅 함. 간단하게 var로 선언한 변수와 function 키워드로 생성된 함수만 맨처음(코드상 맨 위로 끌어올려짐)에 실행 된다고 생각하면 쉬울듯.. console.log(a); var a ; a = "Hello"; 위와 같은 경우 콘솔에 출력되는 a의 값은 undefined 임 . 변수 a는 호이스팅에 의해 미리 초기화 되지만 a에 "Hello"의 할당은.. 2022. 5. 26. arrow function * javascript에서 함수를 만들때 보통 function이라는 키워드로 시작함. * 함수를 생성하기 위한 매우 간단하고 간결한 구문이 존재함 . * 함수 생성시 => 기호가 사용되므로, 이 함수 표현식을 arrow fuction 이라고 함 (두줄이어서 fat arrow 라고도 함) * 문법 * 예를들어 let sum = function(a, b) { return a+b; } 의 함수를 let sum = (a, b) => a + b; console.log("sum: " , sum(1, 2)); 로 변경 할 수 있음. // return a + b 라고 생각하면 됨 * 단일 인수인 경우는 ()가 생략 가능 let multi = n => n * n; * 인수가 없을땐 () 만 사용 let log = () .. 2022. 5. 17. 반복문 1. while : 조건이 true 이면 {}안의 반복문을 실행 * 문법 while(조건){ 반복문 } let a = 1; while(a < 10){ console.log(a); a++; } 2. do ... while : 일단 {} 안의 반복문을 한번 실행하고 조건을 체크, 이때 조건이 true이면 계속 실행 * 문법 do { 반복문 } while (조건) * while..과 do ... while 의 차이는 조건을 언제 확인하느냐의차이.. * while은 조건이 false이면 한번도 실행이 되지 않지만, do .. while은.. 조건이 false 이더라도. .한번은 실행이 됨.. === 그런데.. 실제 코딩할때.. while문을 거의 써본적이.. 없는듯? -_-?? ... java 코딩하면서 한번 .. 2022. 5. 17. switch 문 switch문은 다중 if 문을 대체 할 수 있음 .. 예를들어.. const a = ; if (a ===1){ console.log(1); }else if (a ===2){ console.log(2); }else if (a ===3){ console.log(3); }else{ console.log(0); } 의 경우 const a = 1; switch(a){ case 1: console.log(0); break; case 2: console.log(0); break; case 3: console.log(0); break; default : console.log(0); break; } ... 로 작성이 가능하다 . 각 case 에 break 추가해서 아래의 case가 실행이 되지 않게 한다. break가.. 2022. 5. 17. 이전 1 2 3 다음 반응형