변수가 있습니다. 그것을라고 부르 자 toto
.
이것은 toto
설정할 수 있습니다 undefined
, null
문자열, 또는 객체.
toto
가 데이터로 설정 되어 있는지 확인하고 싶습니다. 즉, 문자열이나 객체로 설정되고 undefined
nor가 아닌 null
다른 변수에 해당 부울 값을 설정 한다는 의미입니다 .
나는 !!
다음과 같은 구문을 생각했다 .
var tata = !!toto; // tata would be set to true or false, whatever toto is.
첫 번째 !
는 false
toto가 undefined
or null
and true
else 이면 설정되고 두 번째는 반전됩니다.
하지만 조금 이상해 보입니다. 이 작업을 수행하는 더 명확한 방법이 있습니까?
나는 이미이 질문 을 보았지만 if
명령문 에서 확인하는 것이 아니라 변수에 값을 설정하고 싶습니다 .
답변
예, 언제든지 다음을 사용할 수 있습니다.
var tata = Boolean(toto);
다음은 몇 가지 테스트입니다.
for (var value of [0, 1, -1, "0", "1", "cat", true, false, undefined, null]) {
console.log(`Boolean(${typeof value} ${value}) is ${Boolean(value)}`);
}
결과 :
Boolean(number 0) is false
Boolean(number 1) is true
Boolean(number -1) is true
Boolean(string 0) is true
Boolean(string 1) is true
Boolean(string cat) is true
Boolean(boolean true) is true
Boolean(boolean false) is false
Boolean(undefined undefined) is false
Boolean(object null) is false
답변
Boolean(obj)
또는 !!obj
을 사용 truthy/falsy
하여 true/false
.
var obj = {a: 1}
var to_bool_way1 = Boolean(obj) // true
var to_bool_way2 = !!obj // true