목록Nodejs (27)
만족

js는 다른 언어들과는 다르게 동작하는 연산들이 많이 있다. 오죽하면 이런 밈이 유행할 정도인데... 이번 포스트에서 다룰 것은 AND연산자와 OR연산자다. 불 연산 컴퓨터나 이공계를 전공했다면 '불 대수'에 대해 들어본 적이 있을 것이다. 불 대수에서, A AND B (A와 B는 참이거나 거짓)의 결과값은 항상 참이거나 거짓이다. 마찬가지로, C나 JAVA같은 강타입 언어에서 불 연산을 진행하면 값 역시 반드시 boolean 값으로 나오게 된다. 그런데 js에서의 논리 연산의 결과값은 boolean 값을 가질 수도 있지만, 다른 값을 가질 수도 있다. const test= "first" && "second"; console.log(typeof test === 'boolean'); //false 분명 &..

두 개념 모두 비동기적인 작업을 좀더 직관적이고 편리하게 진행하기 위해 탄생한 개념이다. 아주아주 빠르게 실전압축으로다가 알아보자. Promise는 무엇인가? es6에서 처음 등장한 개념이다. Promise는 pending(작동 중), fulfilled(성공적으로 완료), reject(실패)의 세 상태를 가진다. 미리 정의된 상태를 통해 비동기적인 작업을 쉽게 다룰 수 있다. new Promise((resolve, reject)=>{ //... }); 와 같이 선언한다. (resolve, reject)=>{ ... } 에는 프로미스로 진행할 작업 내용을 정의하고, 성공 시 resolve( [전달하고싶은 값] ); 을 호출하고, reject( [전달하고 싶은 값;주로 에러 정보] )를 호출한다. resol..
()=> {...} 과 function foo(){...} 은 단순히 텍스트의 길이의 차이만 있는 것은 아니다. 해당 함수를 instance 로써 사용할 때 차이점이 드러나게 된다. this pointer의 가리키는 위치가 서로 다른데 ()=>{...} 에서 this는 자신이 속한 instance를 pointing한다.그러나 function foo(){...} 에서는 자신이 속한 object를 pointing한다 function foo1(){ this.val= 1; return { val: 2, func: function (){ console.log(this.val); } };} function foo2(){ this.val= 1; return{ val: 2, func: ()=>{ console.log(..