Zarezerwowane słowa kluczowe w JavaScript
Jakie słowa kluczowe JavaScript (nazwy funkcji, zmienne itp.) są zastrzeżone?
8 answers
Powinniśmy linkować do rzeczywistych źródeł informacji, a nie tylko do topowego hitu google.
Http://developer.mozilla.org/En/Core_JavaScript_1.5_Reference/Reserved_Words
JScript 8.0: http://msdn.microsoft.com/en-us/library/ttyab5c8.aspx
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-09-04 21:33:55
Oto mój wiersz, który zawiera wszystkie zastrzeżone słowa kluczowe w JavaScript, i jest dedykowany dla tych, którzy pozostają uczciwi w danej chwili, a nie tylko starają się zdobyć:
Let this long package float,
Goto private class if short.
While protected with debugger case,
Continue volatile interface.
Instanceof super synchronized throw,
Extends final export throws.
Try import double enum?
- False, boolean, abstract function,
Implements typeof transient break!
Void static, default do,
Switch int native new.
Else, delete null public var
In return for const, true, char
…Finally catch byte.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-06 13:12:18
Aby uzupełnić odpowiedź benca , Zobacz Standard ECMA-262 . Są to oficjalne słowa zastrzeżone, ale tylko pedant ignoruje implementację, aby szanować standard. Słowa kluczowe najpopularniejszych implementacji, czyli firefox i internet explorer, znajdują się w odpowiedzi benca.
Słowa zarezerwowane w EMCAScript-262 to słowo kluczowe s, przyszłe słowo zarezerwowane s, NullLiteral oraz BooleanLiteral s, gdzie słowa kluczowe to
break do instanceof typeof
case else new var
catch finally return void
continue for switch while
debugger function this with
default if throw
delete in try
The Future Reserved Word s are
abstract export interface static
boolean extends long super
byte final native synchronized
char float package throws
class goto private transient
const implements protected volatile
double import public
enum int short
Nulliteral jest
null
I BooleanLiteral S są
true
false
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-06-17 22:17:15
Właśnie o tym czytałem w JavaScript & jQuery: the Missing Manual:
nie wszystkie z tych słów zastrzeżonych będą powodować problemy we wszystkich przeglądarkach, ale najlepiej unikać tych nazw podczas nazywania zmiennych.
Słowa kluczowe JavaScript:
break, case, catch, continue, debugger, default, delete, do, else, false, finally, for, function, if, in, instanceof, new, null, return, switch, this, throw, true, try, typeof, var, void, while, with
.Zarezerwowane do wykorzystania w przyszłości:
abstract, boolean, byte, char, class, const, double, enum, export, extends, final, float, goto, implements, import, int, interface, let, long, native, package, private, protected, public, short, static, super, synchronized, throws, transient, volatile, yield
.Wstępnie zdefiniowane zmienne globalne w przeglądarce:
alert, blur, closed, document, focus, frames, history, innerHeight, innerWidth, length, location, navigator, open, outerHeight, outerWidth, parent, screen, screenX, screenY, statusbar, window
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-25 04:36:58
Tutaj jest przeglądarka i wersja językowa agnostyczny sposób, aby określić, czy dany ciąg jest traktowany jako słowo kluczowe przez silnik JavaScript. Podziękowania dla tej odpowiedzi , która stanowi rdzeń rozwiązania.
function isReservedKeyword(wordToCheck) {
var reservedWord = false;
if (/^[a-z]+$/.test(wordToCheck)) {
try {
eval('var ' + wordToCheck + ' = 1');
} catch (error) {
reservedWord = true;
}
}
return reservedWord;
}
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:48
Żadna z aktualnych odpowiedzi nie ostrzega, że niezależnie od dialektu ES, przeglądarki mają zwykle własne listy zarezerwowanych słów kluczowych, metod itp.
Na przykład IE9 zabrania używania nazw logicznych, takich jak: addFilter
, removeFilter
(są to m.in. metody zarezerwowane).
Zobacz http://www.jabcreations.com/blog/internet-explorer-9 dla bardziej obszernej "obecnie znanej" listy specyficznej dla IE9. Nie znalazłem jeszcze żadnych oficjalnych odniesień do nich na msdn (lub gdzie indziej).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-08 18:39:58
Oto lista z wymownego JavaScript
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-05 13:19:51
ODPOWIEDŹ Benca jest doskonała, ale za moje dwa grosze podoba mi się strona w3schools na ten temat:
Http://www.w3schools.com/js/js_reserved.asp
Oprócz listy słów kluczowych zarezerwowanych przez standard, zawiera również długą listę słów kluczowych, których należy unikać w pewnych kontekstach; na przykład, nie używając nazwy alert
podczas pisania kodu uruchamianego w przeglądarce. To pomogło mi dowiedzieć się, dlaczego niektóre słowa były podświetlane jako słowa kluczowe w moim edytorze, mimo że wiedziałem to nie były słowa kluczowe.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-03-24 05:08:47