본문 바로가기

Javascript9

Promise, async / await 자바스크립트의 Promise는 비동기 작업을 처리하는데 사용되는 객체. 비동기 작업은 특정 작업이 완료되기를 기다리지 않고 다음 코드가 실행되는 것을 의미한다. Promise는 이러한 비동기 작업을 보다 쉽고 효율적으로 처리하기 위해 도입된 개념. 성공 실패 const pr = new Promise((resolve, reject) => { }); const pr = new Promise((resolve, reject) => { setTimeout(() => { resolve('OK') }, 3000) }); 위 함수는 state가 pending(대기) 에서 3초 후 state: fulfilled(이행됨) 으로 변경됨 const pr = new Promise((resolve, reject) => { set.. 2023. 8. 1.
call , apply, bind call 모든 함수에서 사용할 수 있으며, this를 특정값으로 지정할 수 있다. const kim = { name: 'Kim' }; const lee = { name: 'Lee' }; function showThisName(){ console.log(this.name); } function update(brithYear, occupation){ this.brithYear = brithYear; this.occupation = occupation; }; update.call(kim,1999,"backend"); update.call(tom,2002,"frontend"); apply 함수 매개변수를 처리하는 방법을 제외하면 call과 같다. 다만 call은 일반적인 함수와 마찬가지로 매개변수로 직접 받지만.. 2023. 8. 1.
전개구 전개 구문을 사용하면 배열이나 문자열과 같이 반복 가능한 문자를 0개 이상의 인수 (함수로 호출할 경우) 또는 요소 (배열 리터럴의 경우)로 확장하여, 0개 이상의 키-값의 쌍으로 객체로 확장시킬 수 있습니다. function add(...numbers){ let result = 0; numbers.forEach((num) => (result +=num)); console.log(result); }; function add(...numbers){ let result = numbers.reduce((prev, cur) => prev += cur) console.log(result); }; add(1,2,3); add(1,2,3,4,5,6,7,8,9); function User(name, age, ...sk.. 2023. 8. 1.
array methods (2) arr.map(fn) 함수를 받아 특정 기능을 시행하고 새로운 배열을 반환 let userList = [ { name: 'Kim', age: 30 }, { name: 'Lee', age: 26 }, { name: 'Son', age: 22 }, ] let newUserList = userList.map((user, index)=> { return Object.assign({},user { isAdult: user.age > 19 }) }); 후 let userList = [ { name: 'Kim', age: 30, isAdult: true }, { name: 'Lee', age: 26, isAdult: true }, { name: 'Son', age: 22, isAdult: true }, ] array.. 2023. 7. 31.