0

の意味を知って===います。オペランドが同一かどうかをチェックします。

  • 1 === '1'与えるfalseし、
  • 1 == '1'を与えますtrue

しかしtypeof 1isnumbertypeof '1'isstringでは、JavaScript はどうやって を比較するの1 == '1'でしょうか? コンバージョンは発生していますか?もしそうなら、どれですか?

4

3 に答える 3

4

型が数値と文字列の場合、

JavaScript は文字列を数値に変換します。

注釈付き ECMAScript 5.1のうち:

x と y が値である比較 x == y は、true または false を生成します。このような比較は、次のように実行されます。

...

5. Type(x) が Number で Type(y) が String の場合、比較 x == ToNumber(y) の結果を返します。6. Type(x) が String で Type(y) が Number の場合、比較 ToNumber(x) == y の結果を返します。

于 2013-09-27T14:02:02.473 に答える
0

1 == parseInt("1")文字列を整数に解析することができます。

于 2013-09-27T13:56:55.293 に答える
0

String() を使用する

比較を行う前に、入力を文字列に変換します。

例:

var test1= 1;
var test2= "1";

var answer = String(test1) === String(test2);

この場合、答えは真になります。

于 2013-09-27T13:59:52.850 に答える