OR는 첫번째 true를 발견하는 즉시 평가 멈춤
AND는 첫번째 false를 발견하는 즉시 평가 멈춤
const name = "Mike";
const age = 30;
if(name === "Tom" || age > 19){
console.log('통과1');
};
if(name === "Tom" && age > 19){
console.log('통과2');
};
// > '통과1'
// and 연산자는 통과하지 못함
const gender = 'F';
const name = 'jane';
const isAdult = true;
if (gender === 'M' && name === 'Mike' || isAdult) {
console.log('통과!');
}
// > 통과!
통과되는 이유
- &&가 || 보다 순위가 높아서 먼저 평가됨.
- (~~) || isAdult 의 평가가 이뤄짐.
== (남자인동시에 마이크) or 성인이면 통과- isAdult가 참이기때문에 이 문장은 true가 됨.