console.log('apple' && 'banana')
console.log('apple' || 'banana')
위 예제에서 사용한 apple
과 banana
는 둘 다 truthy
한 값이다.
이 경우 &&
연산자는 마지막 피연산자에서 평가 결과가 결정이 된다.
따라서 banana
를 반환하고, ||
연산자의 경우 첫번째 피연산자에서 평가 결과가
결정되므로 Cat
을 반환한다.
||에서 첫번째 피연산자가 false
일 경우 || 연산자는 true
값을 계속해서 찾아나가므로 해당되는 ture
값이 있다면 그 값을 반환한다.
console.log(false || false || false || '출력' || '출력이 될까요?' )
위의 경우에서 ||
연산자의 특성상 '출력'
까지만 출력이 되고 그 뒤의 문구는 출력이 되지 않는 것을 확인할 수 있다.
console.log('apple' && 'banana' && 'orange')
위의 경우에서는 'orange'
를 반환한다.
정리 :
&&
연산자는 첫 번째 falsy 값을 반환하는데 피연산자에 falsy가 없다면 마지막 값을 반환한다.
정리 :
||
연산자는 첫 번째 truthy 값을 반환하는데 피연산자에 truthy 가 없다면 마지막 피연산자를 반환한다.