《JavaScript DOM 编程艺术》读书笔记之JavaScript 简史


Posted in Javascript onJanuary 09, 2015

JavaScript 是Netscape公司与Sun公司合作开发的。在 JavaScript 1.0发布时,Netscape Navigator主宰着浏览器市场。微软在推出IE3的时候发布了自己的VBScript语言,同时以JScript为名发布了JavaScript 的一个版本,很快赶上了 Netscape 的步伐。面对微软公司的竞争,Netscape 和 Sun公司联合ECMA(欧洲计算机制造商协会)对JavaScript 语言进行了标准化,于是出现了ECMAScript语言,这是同一种语言的另一种名字。

     DOM是一套对文档的内容进行抽象和概念化的方法。Netscape Navigator 4发布于1997年6月,IE4发布于同年10月。这两种浏览器都对它们的早期版本进行了许多改进,大幅扩展了DOM,使能够通过JavaScript 完成的功能大大增加。而网页设计人员也开始接触到一个新名词:DHTML(动态HTML)。

     DHTML并不是一项新技术,而是描述HTML, CSS和JavaScript 技术组合的术语。不幸的是,NN 4和IE 4浏览器使用的是两种不兼容的DOM。这导致了一种可笑的局面:程序员在编写DOM脚本代码时必须知道它们将运行在哪种浏览器环境里,所以在实际工作中,许多脚本不得不编写两次,一次为Netscape Navigator,另一次为IE。同时,程序员还必须编写一些代码去探查在客户端运行的浏览器到底是哪一种。DHTML打开了一个充满机会的新世界,但想要进入其中的人们却发现这是个充满苦难的世界。因此,没多久,这种技术的评价就变成了“宣传噱头”和“难以实现”。

     就在浏览器制造商以DOM为武器展开营销大战的同时,W3C结合大家的优点推出了一个标准化的DOM。令人欣慰的是,Netscape、微软和其他一些浏览器制造商们还能抛开彼此的敌意而与W3C携手制定新的标准,并于1998年10月完成了“第1级DOM”(DOM Level 1)。

     W3C对DOM的定义是:“一个与系统平台和编程语言无关的接口,程序和脚本可以通过这个接口动态的访问和修改文档的内容、结构和样式。”W3C推出的标准化DOM,在独立性和适用范围等诸多方面,都远远超出了各自为战的浏览器制造商们推出的各种专有DOM。

     今天几乎所有的浏览器都内置了对DOM的支持。我们已经目睹了由异步数据传输技术(Ajax)所引发的的学习DOM脚本编程的热潮,而HTML5 DOM的众多新特性,怎能不让人对Web的未来浮想联翩?

以上为本人对于《JavaScript DOM 编程技术》(第2版)第一章的读后总结,认识下javascript的发展史。

Javascript 相关文章推荐
node.js中的fs.appendFileSync方法使用说明
Dec 17 Javascript
Jquery插件easyUi实现表单验证示例
Dec 15 Javascript
jQuery代码性能优化的10种方法
Jun 21 Javascript
jQuery中ScrollTo用法示例
Sep 04 Javascript
JavaScript Ajax实现异步通信
Dec 14 Javascript
jQuery给表格添加分页效果
Mar 02 Javascript
js阻止默认右键的下拉菜单方法
Jan 02 Javascript
js 图片转base64的方式(两种)
Apr 24 Javascript
CKEditor4配置与开发详细中文说明文档
Oct 08 Javascript
VUE+Element UI实现简单的表格行内编辑效果的示例的代码
Oct 31 Javascript
JS实现简单的点赞与踩功能示例
Dec 05 Javascript
Node.JS枚举统计当前文件夹和子目录下所有代码文件行数
Aug 23 Javascript
javascript获取四位数字或者字母的随机数
Jan 09 #Javascript
JS JQUERY实现滚动条自动滚到底的方法
Jan 09 #Javascript
JavaScript Math.ceil 方法(对数值向上取整)
Jan 09 #Javascript
封装好的js判断操作系统与浏览器代码分享
Jan 09 #Javascript
JavaScript Math.floor方法(对数值向下取整)
Jan 09 #Javascript
使用javascript实现json数据以csv格式下载
Jan 09 #Javascript
js读取csv文件并使用json显示出来
Jan 09 #Javascript
You might like
针对初学PHP者的疑难问答(1)
2006/10/09 PHP
ie6 动态缩略图不显示的原因
2009/06/21 PHP
php中导出数据到excel时数字变为科学计数的解决方法
2013/02/03 PHP
PHP仿微信发红包领红包效果
2016/10/30 PHP
PHP不使用内置函数实现字符串转整型的方法示例
2017/07/03 PHP
ThinkPHP5框架实现简单的批量查询功能示例
2018/06/07 PHP
jQuery参数列表集合
2011/04/06 Javascript
JSON传递bool类型数据的处理方式介绍
2013/09/18 Javascript
jQuery列表拖动排列具体实现
2013/11/04 Javascript
SeaJS入门教程系列之完整示例(三)
2014/03/03 Javascript
解决Jquery鼠标经过不停滑动的问题
2014/03/03 Javascript
js父窗口关闭时子窗口随之关闭完美解决方案
2014/04/29 Javascript
extjs 时间范围选择自动判断的实现代码
2014/06/24 Javascript
使用mini-define实现前端代码的模块化管理
2014/12/25 Javascript
ClearTimeout消除闪动实例代码
2016/02/29 Javascript
浅析JavaScript函数的调用模式
2016/08/10 Javascript
BootstrapTable refresh 方法使用实例简单介绍
2017/02/20 Javascript
JavaScript实现实时更新系统时间的实例代码
2017/04/04 Javascript
jQuery Ajax自定义分页组件(jquery.loehpagerv1.0)实例详解
2017/05/01 jQuery
JavaScript数据类型的存储方法详解
2017/08/25 Javascript
Three.js利用orbit controls插件(轨道控制)控制模型交互动作详解
2017/09/25 Javascript
vue系列之requireJs中引入vue-router的方法
2018/07/18 Javascript
JS+HTML5 canvas绘制验证码示例
2018/12/05 Javascript
Vue.extend 编程式插入组件的实现
2019/11/18 Javascript
[01:04:01]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第一场
2014/05/24 DOTA
Python实现新浪博客备份的方法
2016/04/27 Python
python中for循环输出列表索引与对应的值方法
2018/11/07 Python
如何在pycharm中安装第三方包
2020/10/27 Python
英国奢侈品牌时尚购物平台:Farfetch(支持中文)
2020/02/18 全球购物
洗煤厂厂长岗位职责
2014/01/03 职场文书
植物生产学专业求职信
2014/08/08 职场文书
反对四风问题自我剖析材料
2014/09/29 职场文书
学校学期工作总结
2015/08/13 职场文书
浅谈Golang 嵌套 interface 的赋值问题
2021/04/29 Golang
“鬼灭之刃”热度不减,其成功背后的原因是什么?
2022/03/22 日漫
python获取字符串中的email
2022/03/31 Python