学习JavaScript高级程序设计第三版第一步。JavaScript简介不光在这一本说介绍,很多书都提及到,我就简单的把重点记录下来,当做整理吧,以便自己及大家观看。

1995年,我出生了,JavaScript也诞生了,JavaScript现在这么强大而且受欢迎,而我却默默无闻,等我把JavaScript学的很牛X的时候希望我也很厉害了哦,起初Netscape Navigator用它完成基本的数据验证任务,而如今具备了与浏览器窗口及其内容等方面所有的交互,拥有了闭包,匿名函数,甚至元编程等特性,听起来这么高大上的东西我就想知道他们的欲望都变强了。

JavaScript简史

1,起初浏览器提交表单,等30秒没有反应,说明你表单中一个字段没有填写好。

2,1995年, Netscape也就是美国网景公司,建立了LiveWire,为了发布和sun公司合作,起名为JavaScript。

3,1996年的时候,微软推出3中不同的JavaScript。1997年经欧洲计算机制造商协会ECMA组织,当时各大公司程序员数月,完成了ECMA-262来定义了ECMAscript。

4,第二年ISO/IEC,国际标准化组织和国际电工委员会,也采用ECMAscript作为标准,讲ECMAscript成为了JavaScript实现的基础。

JavaScript实现

通过简史我们知道,ECMAscript成为了JavaScript实现的基础,一个完整的JavaScript实现由三个不同的部分组成。

1,核心(ECMAscript)   2,文档对象模型(DOM)    3,浏览器对象模型(BOM)

 ECMAscript

大致来说ECMAscript规定了下列组成部分:语法,类型,语句,关键字,保留字,操作符,对象。和web浏览器没有关系,web浏览器就是他的宿主环境,提供基本实现提供语言的扩展,以便语言和环境对接交互,如DOM操作。根据ECMAscript版本改动,从统一一致到兼容,增加正则,语法,数据结构,继承,数据交互新方式等等,成为了一门强大的编程语言。

DOM

文档对象模型(DOM,Document Object Model)是针对XML但经过扩展用于HTML的应用程序编辑接口(API)。DOM把整个页面映射为一个多层次节点结构。每个组成部分都是某种类型的节点,而节点包含不同的类型结构。

根据DOM控制页面的内容和结构的主动权,借助DOM提供的API,开发人员可以自由的增删改查任何节点。

DOM也是分级别的。

DOM1由DOM核心和DOM HTML组成。1,核心规定如何映射基于XML的文档结构。2,添加针对HTML的对象方法。

DOM2扩展了鼠标和用户界面事件,范围,遍历,等细分模块。而且通过对象对CSS的支持。

DOM2新类型新接口也给了定义。1, DOM视图:定义跟踪不同的文档视图的接口。2, DOM事件:定义事件与事件处理的接口。3, DOM样式:定义了css元素应用样式的接口。4, DOM遍历和范围:定义遍历和文档树的接口。

DOM3也是对 DOM核心进行扩展。

 BOM

浏览器对象模型BOM.

从根本上讲,BOM只处理浏览器窗口与框架。人们习惯性的把所有针对浏览器的javascript扩展算BOM的一部分,例如这些扩展。

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

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

3,提供浏览器详细信息的navigator对象。

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

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

6,对cookies支持。

7,像XMLHttpRequest与IE的ActiveXObejct这样的自定义对象.

总体来说javascript就是一种专为网页设计的脚本语言。

ECMAScript,由ECMA-262定义,提供核心语言功能。

DOM,提供访问和操作网页的内容的方法和接口。

BOM ,提供浏览器交互的方法和接口。

让你简洁清晰真正的了解什么是JavaSCript的更多相关文章

  1. 如何写出小而清晰的函数?(JS 版)

    本文以 JavaScript 为例,介绍了该如何优化函数,使函数清晰易读,且更加高效稳定. 软件的复杂度一直在持续增长.代码质量对于保证应用的可靠性.易扩展性非常重要. 然而,几乎每一个开发者,包括我 ...

  2. C11简洁之道:初始化改进

    1.  C++98/03初始化 我们先来总结一下C++98/03的各种不同的初始化情况: //普通数组 ] = {, , }; //POD(plain old data) struct A { int ...

  3. ES6 新特性

    ECMAScript 6(以下简称ES6)是JavaScript语言的下一代标准.因为当前版本的ES6是在2015年发布的,所以又称ECMAScript 2015. 也就是说,ES6就是ES2015. ...

  4. seajs的使用

    写在前面 seajs是什么? Seajs是一个js文件加载器. 遵循 CMD 规范模块化开发,依赖的自动加载.配置的简洁清晰. 用于Web开发的模块加载工具,提供简单.极致的模块化体验 一:使用 文件 ...

  5. 【原】Bootstrap+Knockout.JS+ASP.Net MVC3+PetaPOCO实现CRUD操作

    1.需求: 1.1)页面要美观大气 1.2)前端代码要简洁清晰,要用MVC或是MVVM框架 1.3)服务端要用MVC框架,要Rest风格 1.4)数据访问要用ORM 2.效果: 2.1)列表 2.2) ...

  6. 【原】移动web资源整理

    2013年初接触移动端,简单做下总结,首先了解下移动web带来的问题 设备更新换代快——低端机遗留下问题.高端机带来新挑战 浏览器厂商不统一——兼容问题多 网络更复杂——弱网络,页面打开慢 低端机性能 ...

  7. 前端之JavaScript基础

    前端之JavaScript基础 本节内容 JS概述 JS基础语法 JS循环控制 ECMA对象 BOM对象 DOM对象 1. JS概述 1.1. javascript历史 1992年Nombas开发出C ...

  8. javascript 基础

    javascript概述: javascript历史: * 1992年Nombas开发出C-minus-minus(C--)的嵌入式脚本语言(最初绑定在CEnvi软件中).后将其改名ScriptEas ...

  9. 最常用的ES6特性(转)

    最常用的ES6特性 let, const, class, extends, super, arrow functions, template string, destructuring, defaul ...

随机推荐

  1. ant_<target>标签含义与使用

    <target>标记目标 目标是一个或多个任务的集合,任务是一段可执行的代码:构建文件中包含一个项目,在项目内部声明了所有目标: <target name = "run&q ...

  2. 6、zabbix使用进阶(02)

    zabbix知识点: zabbix可视化 自定义图形(graphs) 屏幕(screen) 宏(macros)  用户参数(User parameters):用户自定义items key的方式来实现自 ...

  3. Zabbix4.0+第三方报警平台OneAlert监控报警

    1. 前言 告警将重要信息发送给运维「或者其他相关人」,及时发现并且处理问题.在所有开源监控软件里面,Zabbix 的告警方式无疑是最棒的.告警的方式各式各样,从 Email 告警到飞信.139/18 ...

  4. Vue 兼容 IE9 全功能正常使用的全面解决方案

    https://blog.csdn.net/VhWfR2u02Q/article/details/80863626

  5. C# 视频多人脸识别的实现过程

    整个项目是用虹软技术完成开发 上一篇内容的调整,提交到git了,https://github.com/catzhou2002/ArcFaceDemo 基本思路如下: 一.识别线程 1.获取当前图片 2 ...

  6. spring 集成 mybatis

    在日常的开发中,我们经常需要这样对MyBatis和Spring进行集成,把sqlSessionFactory交给Spring管理,通常情况下,我们这样配置: <bean id="sql ...

  7. angular面试记忆的内容

    1.ng-class的用法:ng-class="{red:true}"; 2.ng-repeat怎么可以添加重复数据.ng-repeat="item in arr tra ...

  8. js在线富文本插件的考虑

    使用之前需要考虑的点: 1需要插件,是否需要很多的插件,还是说简单的那些功能就行了. 2界面考虑,看你喜欢那个界面了. 3图片是否需要上传图片服务器. 4文档如果为英文是否会影响开发. 5支持浏览器类 ...

  9. 【文献07】基于MPC的WMR点镇定-极坐标系下和轨迹跟踪

    参考: Kuhne F , Lages W , Silva J D . Point stabilization of mobile robots with nonlinear model predic ...

  10. 摘录和再编:彻底弄懂JS执行机制

    网文: https://juejin.im/post/59e85eebf265da430d571f89 并发模型和事件循环:https://developer.mozilla.org/zh-CN/do ...