나는이 같은 몇 가지 변수를 보았다 :비교 변수
var comparison = <condition> || /* It could be "&&" too */ <condition>;
나는 그것이 무엇인지 모르는 그것은 무엇을 할 수 있습니까? Tks 너무 많이!
나는이 같은 몇 가지 변수를 보았다 :비교 변수
var comparison = <condition> || /* It could be "&&" too */ <condition>;
나는 그것이 무엇인지 모르는 그것은 무엇을 할 수 있습니까? Tks 너무 많이!
그들은 ' logical operators (MDN) :
expr1 && expr2
: false로 변환 할 수 있으면 expr1을 반환하고 그렇지 않으면 false를 반환합니다. 그렇지 않으면 expr2를 리턴합니다. 따라서 부울 값과 함께 사용하면 & &은 두 피연산자가 모두 true이면 true를 반환하고 그렇지 않으면 false를 반환합니다. 그렇지 않은 경우는 false를 리턴합니다.
expr1 || expr2
: true로 변환 할 수 있으면 expr1을 반환하고 그렇지 않으면 false를 반환합니다. 그렇지 않으면 expr2를 리턴합니다. 따라서 부울 값과 함께 사용하면 || 두 피연산자 중 하나가 참이면 true를 반환합니다. 둘 다 false이면 false를 반환합니다.
코드는 두 조건을 평가하고 부울 값을 반환합니다. 이 경우
var comparison = 2 > 1 && 3 < 1;
comparison
는
false
로 설정한다. 적어도 하나 개의 조건이
true
경우
||
가
true
을 반환하면서
&&
true
를 반환합니다.
원래 질문의 경우와 같지 않습니다. Elias Van Ootagem의 답변이 맞습니다. – akronymn
주로 함수 인수를 특정 기본값으로 초기화하는 데 사용됩니다.
if (!(arg1))
{//if arg1 is falsy
arg1 = 'Default for arg1';//assign
}
를 아득히 &&
이가는대로, 즉 거의 같은 이야기 :이 코드가 무엇을
function foo(arg1,arg2)
{
arg1 = arg1 || 'Default for arg1';
arg2 = arg2 || 'Default for arg2';
}
가 실제로 수행하면 동일하다
function foo(arg1,arg2)
{
var areBothArgsTrue = arg1 && arg2;//sets true is both args were truthy, else assigns false
arg1 = arg1 || 'Default for arg1';
arg2 = arg2 || 'Default for arg2';
}
@ruakh 견적을 변경했습니다. – jeremy