Ich lerne über die .data method und sah dies im Code:Gibt es etwas, was ich über die jquery .text-Methode wissen sollte?
$("span").text("" + value);
F: Gibt es einen Grund, warum der Autor („“ + Wert), anstatt einfach (Wert) setzen?
Ich lerne über die .data method und sah dies im Code:Gibt es etwas, was ich über die jquery .text-Methode wissen sollte?
$("span").text("" + value);
F: Gibt es einen Grund, warum der Autor („“ + Wert), anstatt einfach (Wert) setzen?
Warum passiert es in dieser bestimmten Demo? denn diese unterscheiden:
$("span").text(undefined); //empty string set
$("span").text("" + undefined); //"undefined" set
Bevor .data()
gesetzt ist, muss der Wert undefined
, und es in einen String umgewandelt werden, um alles in der Ausgabe zu sehen.
Allgemeiner: Ja, es sind Fällen, in denen es darauf ankommt, lassen Sie uns ein kurzes Beispiel nehmen, die fehlschlägt:
$("span").text([1, 2, 3, 4]);
Dies wird scheitern, weil es eine andere Überlastung von .text()
ist (viele Dinge haben Array-Überlastungen) anstelle von diesem:
$("span").text("" + [1, 2, 3, 4]);
Welche funktioniert, es ist effektiv:
$("span").text("" + "1,2,3,4");
was meinst du mit "fail" hier? – jAndy
@jAndy - es wird nicht "undefined" in der Ausgabe angezeigt, es wäre stattdessen leer, was eine unangenehme Demo macht. –
hat meinen vorherigen Kommentar gelöscht. Mein Test war offensichtlich fehlerhaft. Könnte schwören, ich habe es in "Körper" geändert. – user113716
A: Nein, es macht keinen Sinn, diese explizite "Umwandlung" in eine Zeichenfolge zu haben. jQuery wird sich um dich kümmern.
Dies trifft in vielen Fällen nicht zu. –
scheint eher wie der Autor verwendet wird, mit anderen Sprachen zu arbeiten, die eine explizite String-Umwandlung benötigen und über JQuery getragen. – Ben