&& vs &
&& : 논리 연산자 AND
& : 비트 연산자 AND
논리 연산자 AND
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Logical_AND
피연산자를 왼쪽에서 오른쪽으로 평가한다
평가 중 첫 거짓 같은 피연산자를 만나면 즉시 그 값을 반환한다
모든 값이 참 같은 값이라면 마지막 피연산자의 값이 반환된다
Boolean이 아닌 값을 보존하고 반환한다
//boolean이 아닌 값을 보존하는 경우
result = "" && "foo"; // result 에 ""(빈 문자열)이 할당됩니다
result = 2 && 0; // result 에 0 이 할당됩니다
result = "foo" && 4; // result 에 4 가 할당됩니다.
// boolean을 반환하는 경우
const a = 3;
const b = -2;
console.log(a > 0 && b > 0);