今日見た typeof の戻り結果は実際には整数でした。そして、なぜ写真の結果が1.
1. typeof の優先度が高いため 2. または加算演算子の優先度が高いため
typeof
リーリー
基本的に typeof a ? 1 : 2 は次のように記述できます:
そして、この三項式は Boolean() を呼び出して文字列型を変換します。つまり、 Boolean("boolean") ====>true したがって、戻り値は 1 です。 a を false に代入してみても、戻り値は 1: になります
このステートメントは次のようにコンパイルされます(typeof a)? 1 : 2コンパイルすると、この形式に変更され、結果がこれです。三項演算子
(typeof a)? 1 : 2
何も問題ありません
あなたの例を取ると、三項演算子は、typeof a が true の場合は 1 を返し、typeof a が false の場合は 2 を返します。 最初の 100 + a; は型変換されているため、100 + a = 101 となり、結果も 1 を返します
1.
typeof
の優先度が高いため2. または加算演算子の優先度が高いため
リーリー
基本的に typeof a ? 1 : 2 は次のように記述できます:
リーリーそして、この三項式は Boolean() を呼び出して文字列型を変換します。つまり、
リーリーBoolean("boolean") ====>true
したがって、戻り値は 1 です。
a を false に代入してみても、戻り値は 1: になります
このステートメントは次のようにコンパイルされます
(typeof a)? 1 : 2
コンパイルすると、この形式に変更され、結果がこれです。三項演算子
何も問題ありません
リーリーあなたの例を取ると、
三項演算子は、typeof a が true の場合は 1 を返し、
typeof a が false の場合は 2 を返します。
最初の 100 + a; は型変換されているため、100 + a = 101 となり、
結果も 1 を返します