JS基础,JavaScript的三大主要组成部分、JavaScript浏览器内核、JavaScript变量

1.ECMAScript(核心)

ECMA-262没有参照web浏览器,规定了语言的组成部分,具体包括语法、类型、语言、关键字、保留字、操作符、对象。

ECMAScript就是对该标准规定了各个方面内容的语言的描述。

ECMAScript的兼容:

1 支持ECMA-262描述的所有“类型,值,对象,属性,函数,以及程序语法和语义” 。

2 支持Unicode字符标准。

3 添加ECMA-262没有描述的更多“类型,值,对象,属性,函数”,ECMA-262说说的浙西新增特性,主要是指该标准中没有规定的新对象和对象的新属性。

4 支持ECMA-262中没有定义的“程序和正则表达式的语法”。也就是说可以修改和扩展内置的正则表达式语法。

2.DOM(文档对象模型)
文档对象模型DOM是针对XML但经过扩展用于HTML的应用程序编程接口(API)。DOM把整个页面映射为一个多层次节点结构。HTML或者XML页面中的每个组成部分都是某种类型的节点,这些节点又包含着不同类型的数据。

DOM级别:

DOM1级于1998年10月成为W3C的推荐标准。BOM1由两个模块组成分别是DOM core和DOM HTML。

DOM core:规定如何映射基于XML的文档结构,以便简化对文档中任意部分的访问和操作。

DOM HTML:在DOM core的基础上加以扩展,添加了针对HTML的对象和方法。

DOM2级在原来DOM的基础上有扩充了鼠标和用户界面事件、范围、遍历等细分模块,通过对象接口增加了对css的支持。包括以下模块:

1 DOM Views(DOM视图):定义了跟踪不同文档视图的接口。

2 DOM Events(DOM事件):定义了事件与事件处理的接口。

3 DOM Traversal and Range(DOM遍历和范围):定义了遍历和操作文档的接口。

DOM3级则进一步扩展了DOM,引入了加载和保存模块以统一方式加载和保存文档的方法;新增了DOM验证模块主要还是验证文档的方法。

3.BOM(浏览器对象模型)

BOM处理浏览器窗口和框架,人们习惯上把所有针对浏览器的JavaScript扩展算作是BOM的一部分。包括以下:

1 弹出新浏览器窗口的功能。

2 移动、缩放和关闭浏览器窗口的功能。

3 提供浏览器所加载页面的详细信息的navigator对象。

4 提供浏览器所加载页面的详细信息的location对象。

5 提供用户分辨率详细信息的screen对象。

6 对cookies的支持。

7 像XMLHttpRequest和IE的ActionXobject这样的自定义对象。

4.JavaScript解释器 : 浏览器内核

E Trident 俗称IE内核

Chrome Webkit Blink(2013年)

FireFox Gecko 俗称FireFox内核

Opera Blink Presto

Safari Webkit

...

5.JavaScript变量

1.变量的命名规则

所有 JavaScript 变量必须以唯一的名称的标识。

这些唯一的名称称为标识符。

标识符可以是短名称(比如 x 和 y),或者更具描述性的名称(age、sum、totalVolume)。

构造变量名称(唯一标识符)的通用规则是:

      • 名称可包含字母、数字、下划线和美元符号
      • 名称必须以字母开头
      • 名称也可以 $ 和 _ 开头
      • 名称对大小写敏感(y 和 Y 是不同的变量)
      • 保留字(比如 JavaScript 的关键词)无法用作变量名称

提示:JavaScript 标识符对大小写敏感。在JavaScript中name既不是保留字也不是关键字,但是在window对象中有一个属性是window.name。

window.name是一个字符串,所以当你在声明name变量时相当于给window.name赋值(字符串类型)。

2.变量的用法

变量的作用 : 用来存储数据的

变量的初始化 : 变量的声明和赋值

1. 变量声明 : 使用var关键字在内存中开辟内存空间

2. 变量赋值

3. 变量的重新赋值

(1) 先把内存中的原值销毁掉

(2) 把新值存入变量

4. 变量的重新声明

(1). 先销毁掉变量在内存中开辟的空间

(2). 使用var在内存中开辟新的内存空间

5. 变量的批量声明和赋值 每个变量之间使用逗号隔开, 最后必须使用分号

6. 把一个变量的值赋值给另一个变量