《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 相关文章推荐
JQuery select标签操作代码段
May 16 Javascript
基于jquery实现一张图片点击鼠标放大再点缩小
Sep 29 Javascript
JS根据变量保存方法名并执行方法示例
Apr 04 Javascript
jQuery 重复加载错误以及修复方法
Dec 16 Javascript
使用基于Node.js的构建工具Grunt来发布ASP.NET MVC项目
Feb 15 Javascript
Javascript iframe交互并兼容各种浏览器的解决方法
Jul 12 Javascript
微信小程序 JS动态修改样式的实现代码
Feb 10 Javascript
JS去除字符串中空格的方法
Feb 14 Javascript
Vue.Js中的$watch()方法总结
Mar 23 Javascript
JavaScript之class继承_动力节点Java学院整理
Jul 03 Javascript
AngularJs分页插件使用详解
Jun 30 Javascript
Vue 实现列表动态添加和删除的两种方法小结
Sep 07 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在页面中调用fckeditor编辑器的方法
2011/06/10 PHP
CodeIgniter使用phpcms模板引擎
2013/11/12 PHP
异步加载技术实现当滚动条到最底部的瀑布流效果
2014/09/16 PHP
PHP制作图形验证码代码分享
2014/10/23 PHP
PHP循环遍历数组的3种方法list()、each()和while总结
2014/11/19 PHP
常见php数据文件缓存类汇总
2014/12/05 PHP
php通过记录IP来防止表单重复提交方法分析
2014/12/16 PHP
Firebug入门指南(Firefox浏览器)
2010/08/21 Javascript
Js判断参数(String,Array,Object)是否为undefined或者值为空
2013/11/04 Javascript
JavaScrip实现PHP print_r的数功能(三种方法)
2013/11/12 Javascript
node.js中的fs.write方法使用说明
2014/12/15 Javascript
javascript去除空格方法小结
2015/05/21 Javascript
使用do...while的方法输入一个月中所有的周日(实例代码)
2016/07/22 Javascript
jQuery动态创建元素以及追加节点的实现方法
2016/10/20 Javascript
js实现文字向上轮播功能
2017/01/13 Javascript
JavaScript自定义文本框光标
2017/03/05 Javascript
Angular+Node生成随机数的方法
2017/06/16 Javascript
vue 自定义组件 v-model双向绑定、 父子组件同步通信的多种写法
2017/11/27 Javascript
JavaScript伪数组用法实例分析
2017/12/22 Javascript
微信小程序 函数防抖 解决重复点击消耗性能问题实现代码
2019/09/12 Javascript
微信小程序利用云函数获取手机号码
2019/12/17 Javascript
[04:50]2019DOTA2高校联赛秋季赛四强集锦
2019/12/27 DOTA
Python写的一个定时重跑获取数据库数据
2016/12/28 Python
Python爬虫天气预报实例详解(小白入门)
2018/01/24 Python
Python flask框架post接口调用示例
2019/07/03 Python
python实现动态数组的示例代码
2019/07/15 Python
python openpyxl使用方法详解
2019/07/18 Python
django 实现手动存储文件到model的FileField
2020/03/30 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
高性能装备提升营地:Kammok
2019/02/27 全球购物
检查机关党的群众路线个人整改措施
2014/10/04 职场文书
个人先进材料范文
2014/12/30 职场文书
毕业生对母校寄语
2015/02/26 职场文书
田径运动会通讯稿
2015/07/18 职场文书
《曾国藩家书》读后感——读家书,立家风
2019/08/21 职场文书
原生JS实现飞机大战小游戏
2021/06/09 Javascript