ES5 Study

Keywords

 

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

 

 

Future Reserved words

class

 

enum

 

extends

 

super

 

const

 

export

 

import

 

implements

 

let

 

private

 

public

 

yield

 

interface

 

package

 

protected

 

static

 

 

ECMAScript language types: Undefined, Null, Boolean, String, Number and Object.

 

A specification type corresponds to meta-values that are used within algorithms to describe the semantics of ECMAScript language constructs and ECMAScript language types. The specification types are Reference, List, Completion, Property Descriptor, Property Identifier, Lexical Environment, and Environment Record. Specification type used to describe intermediate results of EScript expression evaluation, but cannot be stored as properties of objects or values of EScript language variables.

 

Undefined Type-undefined,

Null Type - null,

Boolean Type - true or false,

String Type - set of all finite ordered sequences of zero or more 16-bit unsigned integer values("elements").

Number Type - NaN, +Infinity(Infinity), -Infinity, +0(0), -0,

Object Type - a collection of properties. Each property is either a named data property, a named accessor property, or an internal property.

    data property: associates a name with an ECMAScript language value and a set of Boolean attributes

    accessor property: associates a name with one or two accessor functions, and a set of Boolean attributes. It used to store or retrieve an ECMAScript language value that is associated with the property.

    internal property: has no name and is not directly accessible via EScript language operators. It exist purely for specification purposes.

 

Two kinds of access for named(non-internal) properties: get and put, corresponding to retrieval and assignment, respectively.

 

Attributes of a Named Data Property:

[[Value]], [[Writable]], [Enumerable]], [[Configurable]]

Attributes of a Named Accessor Property:

[[Get]], [[Set]], [[Enumerable]], [[Configurable]]

 

Default Attribute Values:

Attribute Name

 

Default Value

 

[[Value]]

 

 

undefined

 

[[Get]]

 

 

undefined

 

[[Set]]

 

 

undefined

 

[[Writable]]

 

 

false

 

[[Enumerable]]

 

 

false

 

[[Configurable]]

 

 

false

 

posted @ 2010-06-28 13:41  我是小菜鸟  阅读(164)  评论(0编辑  收藏  举报