Javascript 简明教程

JavaScript - Reserved Keywords

Reserved Keywords in JavaScript

JavaScript 中的 reserved keywords 是预定义关键字,用于提供编程语言的内建功能。例如, varlet 关键字用于定义变量, function 关键字用于定义函数,等。JavaScript 包含多于五十个保留关键字。

简单地说,你不能将保留关键字用作标识符。如果你这样做,你将获得冲突,并且代码将生成错误的输出或抛出错误。

例如,以下代码将抛出一个错误,因为 "function" 被用作一个标识符。

var function = "Hello";

Reserved Keywords

以下是保留关键字列表;你不能将它们用作标识符——

abstract

double

implements

return

arguments

else

in

switch

await

enum

instanceof

synchronized

boolean

eval

int

this

break

export

interface

throw

byte

extends

let

throws

case

false

long

transient

catch

final

native

true

char

finally

new

try

class

float

null

typeof

const

for

package

var

continue

function

private

void

debugger

goto

protected

volatile

default

if

public

yield

delete

implements

short

while

do

import

static

with

Reserved Keywords added in ES5 and ES6

一些新的关键字已添加到 ES5 和 ES6 版本的 JavaScript 中。然而,一些当前正在使用,并且一些关键字是为未来版本保留的。

await

class

enum

export

extends

import

let

Super

Removed Reserved Keywords

一些保留关键字已从 JavaScript 中删除,你不能使用它们来实现特定功能。但是,你仍然不能将以下关键字用作标识符,因为许多浏览器不支持它们。

abstract

boolean

byte

char

double

final

float

goto

int

long

native

short

synchronized

throws

transient

volatile

JavaScript Objects, Properties, and Methods

在 Javascript 中不要将内置函数、属性和方法名作为标识符。

JavaScript Built-in Objects

Array

ArrayBuffer

Boolean

DataView

Date

Error

eval

Float32Array

Float64Array

Function

Generator

GeneratorFunction

Int8Array

Int16Array

Int32Array

Intl

JSON

Map

Math

Number

Object

Promise

Proxy

RangeError

ReferenceError

Reflect

RegExp

Set

String

Symbol

SyntaxError

TypeError

Uint8Array

Uint8ClampedArray

Uint16Array

Uint32Array

JavaScript Built-in Properties

length

constructor

prototype

proto

caller

callee

JavaScript Methods

toString

shift

indexOf

split

toLocaleString

unshift

lastIndexOf

substr

valueOf

slice

includes

substring

toLocaleDateString

splice

isArray

toLowerCase

toLocaleTimeString

sort

from

toLocaleLowerCase

toLocaleString

forEach

of

toUpperCase

toFixed

map

charAt

toLocaleUpperCase

toExponential

filter

charCodeAt

trim

toPrecision

reduce

codePointAt

startsWith

concat

reduceRight

normalize

endsWith

join

every

repeat

match

pop

some

replace

test

push

find

search

reverse

但是,可以探索更多内置 Javascript 方法,并避免将其作为标识符。

Other Reserved Keywords

Javascript 可以与其他编程语言(如 HTML,Java 等)一起使用。因此,也应避免在 HTML、Java 等语言中保留的关键字。

以下列出了其他保留关键字,其中大部分是 window 对象的属性。

alert

elements

frameRate

radio

all

embed

hidden

reset

anchor

embeds

history

screenX

anchors

encodeURI

image

screenY

area

encodeURIComponent

images

scroll

assign

escape

offscreenBuffering

secure

blur

event

open

select

button

fileUpload

opener

self

checkbox

focus

option

setInterval

clearInterval

form

outerHeight

setTimeout

clearTimeout

forms

outerWidth

status

clientInformation

frame

packages

submit

close

innerHeight

pageXOffset

taint

closed

innerWidth

pageYOffset

text

confirm

layer

parent

textarea

constructor

layers

parseFloat

top

crypto

link

parseInt

unescape

decodeURI

location

password

untaint

decodeURIComponent

mimeTypes

pkcs11

window

defaultStatus

navigate

plugin

document

navigator

prompt

element

frames

HTML Event Handlers

你不应该将 HTML 事件处理程序用作 Javascript 中的变量名称。

在此,我们列出了一些事件处理程序。

onclick

ondblclick

onmouseover

onmouseout

onmousemove

onkeydown

onkeyup

onkeypress

onfocus

onblur

onchange

onsubmit

onreset

onload

onunload

onresize

总之,你应该避免将所有上述关键字用作变量或函数名。