引自《 JavaScript 權威指南》2.4 / P28 ~ 29 保留字 部分服務器
保留字
JavaScript 把一些標識符拿出來用做本身的關鍵字。所以,就不能再在程序中把這些關鍵字用做標識符了:ide
1
2
3
4
5
6
break
delete
function
return
typeof
case
do
if
switch
var
catch
else
in
this
void
continue
false
instanceof
throw
while
debugger
finally
new
true
with
default
for
null
try
ES 5 保留了這些關鍵字,關鍵字在 ES 6 中已經使用:函數
1
class
const
enum
export
extends
import
super
嚴格模式下是保留字:flex
1
2
3
4
5
implements
let
private
public yield
interface
package
protected
static
// 嚴格模式一樣對如下標識符的做用作了嚴格限制,它們並不徹底是保留字,但不能用做變量名、函數名或參數名:
arguments
eval
ES 3 中 將 Java 的全部關鍵字都列爲本身的保留字,儘管如下這些保留字在 ES 5 中放寬了限制,但若是你但願代碼能在基於 ES 3 實現的解釋器上運行的話,應當避免使用這些關鍵字做爲標識符(下面我好像都沒做爲變量名用過):this
1
2
3
4
5
6
abstract
double
goto
native
static
boolean
enum
implements
package super
byte export import private synchronized
char extends int protected throws
class finally interface public transient
const float long short volatile
JS 中的一些預約義的全局變量名以及函數,應當避免把它們的名字用作變量名和函數名(普通 IDE 應該都有 Highlight 提示,不用擔憂,並且下面的名字都耳熟能詳了吧,注意大小寫就是了):spa
1
2
3
4
5
6
arguments
encodeURI
Infinity
Number
RegExp
Array
encodeURIComponent
isFinite
Object
String
Boolean
Error
isNaN
parseFloat
SyntaxError
Date
eval
JSON
parseInt
TypeError
decodeURI
EvalError
Math
RangeError
undefined
decodeURIComponent
Function
NaN
ReferenceError
URIError
結束語
寫代碼本身定義變量名或者函數名的時候仍是要根據實際狀況來考慮,由於每一種特定的 JavaScript 運行環境(客戶端、服務器端等)都有本身的有一個全局屬性的列表,固然你用全拼音字母命名法無敵好吧~debug