W Javie, uważam, że najlepszym rozwiązaniem jest zastąpienie literały ciągów znaków o zmiennej stałej każdej chwili są one wykorzystywane w więcej niż jednym miejscu i oczekuje na mecz. Na przykład, jeśli zamierzasz ustawić plik cookie, a później go odtworzysz, nazwa pliku cookie powinna być stała, aby kompilator mógł złapać błędy ortograficzne, nie wspominając już o umożliwieniu czytelnej nazwy zmiennej versus faktyczna wartość String.Czy najlepszą praktyką jest wyodrębnianie ciągów znaków do stałych w JavaScript?
jestem przeglądu kodu takiego w JavaScript i jestem skłonny polecić że literały być zastąpiona stałą. Nie jestem jednak pewien, czy te same powody mają zastosowanie, ponieważ nie ma kompilatora, a nazwa pliku cookie jest tak samo opisowa, jak nazwa zmiennej.
Edit: Podobne do otrzymanych dotychczas komentarze i odpowiedzi, jestem zdecydowanie bardziej związane z wykorzystaniem stałych kontra jaki sposób są one rzeczywiście realizowane. Widzę ich wartość w Javie i innych językach skompilowanych jako sposób na uniknięcie błędów, ale nie jestem pewien, czy widzę tę samą wartość w JavaScript.
Jako mechanizm dokumentacji, powiedzmy dla liczb magicznych, myślę o zmiennej nazwie (nawet jeśli nie jest egzekwowane jako stała) jest nadal dobrym sposobem na poprawę czytelności. Ale dla napisowych, nie jestem pewien, że to:
var trackingCookieName = "trackingCookie";
jest lepsza niż tylko za pomocą „trackingCookie”, ponieważ można typo albo dosłowne lub zmienna nazwa i tak czy inaczej, to będzie poławiany wyłącznie przy starcie .
Uzgodnione. Dodam, że prawdopodobnie lepiej jest używać stałych, ponieważ liczba literałów łańcuchowych rośnie. W przypadku literówki najprawdopodobniej otrzymasz ReferenceError, który znacznie ułatwi debugowanie. – squidbe