1. ホーム
  2. ジャバスクリプト

[解決済み】JavaScriptで文字列にキャストする

2022-04-11 19:25:59

質問

ある変数を次のようにキャストする方法を3つ見つけました。 String をJavaScriptで実行します。

jQueryのソースコードでこの3つのオプションを検索してみると これらはすべて使用されています。 .

両者に違いがあれば教えてほしい。

value.toString()
String(value)
value + ""

DEMO

どれも同じような出力をしますが、どれかが他のものより優れているのでしょうか?

私なら + "" は、文字数を節約できるという利点がありますが、それはそれほど大きな利点ではありません。

どのように解決するのですか?

を指定した場合、それぞれ異なる動作をします。 valuenull .

  • null.toString() はエラーをスローします。 nullのメソッド'toString'を呼び出すことはできません。
  • String(null) が返されます。 null"
  • null + "" も返します。 null"。

非常によく似た動作は、以下の場合に起こります。 valueundefined (参照 jbabeyさんの回答 ).

それ以外の性能差はごくわずかで、巨大なループで使用するのでなければ、気にする価値はないでしょう。