/Users/yangyangzi/Desktop/YangZi2/JavaScript/JavaScript.rtfd (公司电脑)
7.8
编译型语言:程序执行之前,需要专门的一个编译过程,把程序编译成为机器语言的文件,比如exe文件;强类型语言,java c++
解释型语言:程序执行之前,不需要编译,直接运行时边解析边执行的语言弱类型语言 python php ;
JavaScript的组成:
ECMAScript:ECMA即欧洲计算机制造商协会;ECMAScript是ECMA指定的脚本语言的标准,规定了一种脚本语言实现应该包含的基本内容
DOM:JavaScript操作网页上元素的API
BOM:JavaScript操作浏览器的部分功能的API
DOM树:Document Object Model,即文档对象模型
DOM可以以一种独立于平台和语言的方式访问和修改一个文档的内容和结构。换句话说,这是表示和处理一个HTML或XML文档的常用方法。有一点很重要,DOM的设计是以对象管理组织(OMG)的规约为基础的,因此可以用于任何编程语言。最初人们把它认为是一种让JavaScript在浏览器间可移植的方法,不过DOM的应用已经远远超出这个范围。Dom技术使得用户页面可以动态地变化,如可以动态地显示或隐藏一个元素,改变它们的属性,增加一个元素等,Dom技术使得页面的交互性大大地增强,通过 JavaScript,您可以重构整个 HTML 文档。您可以添加、移除、改变或重排页面上的项目。
https://baike.baidu.com/item/DOM/50288?fr=aladdin
BOM:Browser Object Model,即浏览器对象模型。浏览器在页面初始化时,会在内存创建一个全局对象,用来描述当前窗口的属性和状态,这个全局对象被称为浏览器对象模型
不同于DOM的标准化组织是W3C,JavaScript的语法标准是ECMA,BOM没有官方标准,对于现代浏览器,每个浏览器都有自己的BOM实现方法,所有直接使用BOM会有兼容性问题,但是为了利用JavaScript完成交互,现代浏览器几乎都实现了相同的方法和属性,这些方法和属性被称作BOM方法和属性
BOM包含:有个核心对象window,window包含6大核心模块,分别是:document对象,渲染引擎在解析HTML对象时,会生成一个document对象,即文档对象,它是HTML文档的根节点。每一个元素都会生成对应的DOM对象,由于元素之间有层级关系,整个HTML代码解析结束后,会生成一个由不同节点组成的树形结构,成为DOM树。用于描述DOM树的状态和属性,并提供了很多操作DOM的API
frames,即HTML自框架
History,页面历史记录;window.history对象包含浏览器的历史记录,window可以省略。这些历史记录以栈(FIFO)的形式保存。页面前进则入栈,页面返回则出栈
location,当前页面地址
navigator,浏览器相关信息
screen,用户显示屏幕相关属性
DOM
Js的所有全局对象、全局方法、全局变量全部自动被归为iwindow对象的方法和属性,在调用这些方法和属性时可以省略window。DOM是window对象的属性
BOM https://www.jianshu.com/p/0c8b34111e95
1、js的样式(类似于css的三种样式,只不过js用