ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript の暗黙的な型変換の 4 つの状況を要約する

JavaScript の暗黙的な型変換の 4 つの状況を要約する

巴扎黑
巴扎黑オリジナル
2018-05-14 11:26:481217ブラウズ

次のエディターは、JavaScript の暗黙的な型変換が存在する 4 つの状況の概要を示します (必読の記事)。編集者はこれがとても良いと思ったので、参考として共有します。エディターに従って、JavaScript が変数のデータ型を変換する状況を見てみましょう。

ディレクトリ内の条件

* if中的条件会被自动转为Boolean类型
 * 会被转为false的数据
 * 会被转为true的数据
* 参与+运算都会被隐式的转为字符串
 * 会被转为空字符串的数据
 * 会被转为字符串的数据
 * 会被转为数据类型标记的数据
* 参与*运算都会被隐式的转为数字
 * 会被转为0的数据
 * 会被转为1的数据
 * 会被转为NaN的数据
* == 运算符
 * 为true的时候
 * 为false的时候

ifは自動的にBoolean型に変換されます

は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)

はtrueデータに変換されます

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]"

* 操作に参加します暗黙的に数字に変換されます。

2 * '' // 0
2 * [] // 0
2 * false // 0

の場合は true 、

2 * '1' // 2
2 * [1] // 2
2 * true // 2

の場合は false 注: 空の配列 [] は + 演算子の下で変換されます 空の文字列 '' は * 演算子の下で数値 0 に変換されます。しかし、if ステートメントでは true になります。

以上がJavaScript の暗黙的な型変換の 4 つの状況を要約するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。