(重读)JavaScript高级程序设计第四版 2,关于JavaScript的实现,自己的理解

JavaScript的实现

完整的JavaScript包括

核心 (ECMAScript)

核心包括了基本语法,语句,关键字,操作符,全局对象等

ESMAScript是JavaScript最核心的东西,而浏览器只是ECMAScript实现的一个宿主环境,浏览器提供了ECMAScript的实现引擎,以及提供了一套与其交互的扩展(DOM和BOM)

简单来说,js本身只是一门语言,他提供了一些语法,关键字给我们使用,我们可以用它来写一些代码,比如1+1
但是如果我们要将其展示在浏览器上给用户看或者实现某个脚本功能的时候 就要使用浏览器为我们提供的扩展对象 (DOM和BOM)

文档对象模型(DOM)

简单来说 DOM就是一套API , 用来操作文档对象的(HTML或XML)

DOM将整个页面(HTML或XML)抽象为一组分层节点,形成了一个文档树 然后提供了一系列API用于访问和修改每个节点的数据

这样开发者可以随心所欲的控制网页的内容和结构了

W3C

由于微软和网景公司采用不同思路开发DHTML,开发者分别开发两套代码,为了保持web的跨平台性,W3C开始制定了DOM标准

DOM标准

所谓标准就是官方制定了一系统手册(API) 然后所有的浏览器产家都要按照这个手册去制定API
这样的话 开发者只需按照这个手册去开发,就可以适用于所有的浏览器

注意:DOM并非只能通过JavaScript才能访问,有很多语言都可以实现

DOM Level 1 主要提供了方便访问和操作文档任意结构的方式

DOM Level 2 增加了鼠标等用户界面事件,遍历操作DOM节点的支持

DOM Level 3 增加了加载和保存文档的方法,验证文档的方法

浏览器对象模型BOM

用于支持访问和操作浏览器的窗口,使得开发者可以操作页面之外的部分

而BOM是唯一没有相关标准的JavaScript实现,使得有很多坑的存在,因为这意味着各个浏览器操作窗口的API方法不同

HTML5改变了这个局面,这个版本以正式规范的形式涵盖了大部分BOM特性,也就是说HTML5规范了很多操作,各大浏览器都会遵循它

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值