Ich wollte die ganze Zeit === (Triple Equals, strenger Vergleich) verwenden, wenn ich String-Werte vergleiche, aber jetzt finde ich das
"foo" === new String("foo")
ist falsch und dasselbe damit:
var f = "foo", g = new String("foo");
f === g; // false
Natürlich:
f == g; // true
Wird also empfohlen, immer == für den Zeichenfolgenvergleich zu verwenden oder Variablen vor dem Vergleich immer in Zeichenfolgen zu konvertieren?
new String
(völlig sinnlos) zu erstellen, anstatt sie zu verwenden==
new String("foo")
in Javascript verwenden wollen ? Ich habe noch nie einen solchen Code im Code gesehen, dh jQuery ...
String(obj)
eine Box-Zeichenfolge in das Grundelement konvertieren, sobald Sie Ihren Parameter "Zeichenfolge" erhalten haben. ("foo" === String(new String("foo"))) === true
foo
es die reine Zeichenfolge undnew String("foo")
die Objektzeichenfolge ist