JavaScriptでは、次の方法で文字列を宣言できます。
_var a = "Hello World";
var b = new String("Hello World");
_
ただし、aはStringのインスタンスではありません...
_console.log(a instanceof String); //false;
console.log(b instanceof String); //true;
_
それでは、どのようにしてタイプまたは「instanceof
」文字列リテラルを見つけるのでしょうか?
JavaScriptはすべての文字列リテラルに対してnew String()
を作成することを強制できますか?
使用する typeof "foo" === "string"
の代わりに instanceof.
代わりにtypeof
を使用して、結果の文字列を比較してください。詳細については、 docs を参照してください。
新しい文字列を作成するためにnew String()
を記述する必要はありません。 _var x = 'test';
_ステートメントを記述すると、x
をプリミティブデータ型の文字列として作成します。オブジェクトリテラルのように、このx
にカスタムプロパティをアタッチすることはできません。すなわち。 _x.custom = 'abc';
_ _x.custom
_は未定義の値を与えます。したがって、必要に応じて、オブジェクトを作成する必要があります。 new String()
は、文字列ではなく、typeof()
Objectでオブジェクトを作成します。このオブジェクトにカスタムプロパティを追加できます。