다음 편집기는 JavaScript 암시적 유형 변환이 존재하는 네 가지 상황에 대한 요약을 제공합니다(꼭 읽어야 할 기사). 편집자님이 꽤 좋다고 생각하셔서 지금 공유하고 모두에게 참고용으로 드리도록 하겠습니다. 편집기를 따라가서 살펴보겠습니다. 일반적으로 JavaScript에서는 변수의 데이터 유형을 변환하는 경우가 4가지 있습니다.
디렉토리의 조건* if中的条件会被自动转为Boolean类型
* 会被转为false的数据
* 会被转为true的数据
* 参与+运算都会被隐式的转为字符串
* 会被转为空字符串的数据
* 会被转为字符串的数据
* 会被转为数据类型标记的数据
* 参与*运算都会被隐式的转为数字
* 会被转为0的数据
* 会被转为1的数据
* 会被转为NaN的数据
* == 运算符
* 为true的时候
* 为false的时候
가 거짓 데이터로 변환됩니다.
if(false) console.log(2333)
if('') console.log(2333)
if(null) console.log(2333)
if(undefined) console.log(2333)
if(NaN) console.log(2333)
if(true) console.log(2333) // 2333
if('test') console.log(2333) // 2333
if([]) console.log(2333) // 2333
if({}) console.log(2333) // 2333
는 빈 문자열 데이터로 변환됩니다.
'str-' + '' // str-
'str-' + []
'str-' + '1' // "str-1"
'str-' + 1 // "str-1"
'str-' + false // "str-false"
'str-' + true // "str-true"
'str-' + null // "str-null"
'str-' + undefined // "str-undefined"
'str-' + NaN // "str-NaN"
'str-' + {} // "str-[object Object]"
'str-' + {a:1} // "str-[object Object]"
는 0 데이터로 변환됩니다
2 * '' // 0
2 * [] // 0
2 * false // 0
2 * '1' // 2
2 * [1] // 2
2 * true // 2
2 * {} // NaN
2 * {a:1} // NaN
0 == false // true 0 == '' // true 0 == '0' // true 0 == [] // true 0 == [0] // true 1 == true // true 1 == '1' // true 1 == [1] // true [1] == true // true [] == false // true
0 == {} // false 0 == null // false 0 == undefined // false 0 == NaN // false 1 == {} // false 1 == null // false 1 == undefined // false 1 == NaN // false [] == [] // false [1] == [1] // false [1] == {} // false [1] == {a:1} // false [1] == false // false [1] == null // false [1] == undefined // false [1] == NaN // false {} == {} // false {a:1} == {a:1} // false
는 true입니다. 참고: 빈 배열 []은 + 연산자 아래로 변환됩니다. 빈 문자열 ''은 * 연산자 아래에서 숫자 0으로 변환됩니다. 그러나 if 문에서는 true가 됩니다.
위 내용은 JavaScript 암시적 유형 변환의 네 가지 상황을 요약합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!