Znalazłem trzy sposoby na rzutowanie zmiennej Stringw JavaScript.
Szukałem tych trzech opcji w kodzie źródłowym jQuery i wszystkie są w użyciu .
Chciałbym wiedzieć, czy są między nimi jakieś różnice:
value.toString()
String(value)
value + ""
Wszystkie wytwarzają tę samą moc wyjściową, ale czy jeden z nich jest lepszy od innych?
Powiedziałbym, że + ""ma tę zaletę, że oszczędza niektóre postacie, ale to nie jest tak duża zaleta, coś jeszcze?
toStringjest to semantycznie najczystszy sposób na samodzielne udokumentowanie faktu, że próbujesz uzyskać łańcuchowy odpowiednik obiektu. String(...)jest trochę tępy i value + ""jest trochę hack. Daje to również możliwość zastąpienia domyślnej toStringimplementacji niestandardowej, jeśli zajdzie taka potrzeba, jako niewielka dodatkowa korzyść.
+ ""jest najszybszy według jsperf, więc ... robi to w inny sposób, jak sądzę.
toString()byłaby droga.