Javascript语言特性
语言特性这里块,书本没有讲的很多,基本都是在别的博客看的,很多博客的观点也不一致,我就挑几点常见的理解一下。
(1)基于原型
js的面向对象是基于原型的面向对象,对象创建的方式根本上只有一种,就是以原型对象为模板创建对象。
只有对象,没有类;对象继承对象,而不是类继承类。
原型对象是新对象的模板,它将自身的属性共享给新对象。
一个对象不但可以享有自己创建时和运行时定义的属性,而且可以享有原型对象的属性。
这一块内容来自于大神博客
(2)弱类型
变量不需要声明和指定类型即可使用
(3)动态性
采用事件驱动的方式进行
可以在前端实现一些和服务器完全没有联系的效果
(4)解释性
解释性语言,变执行边解释,无需编译
(5)安全性
语言相对来说比较安全,仅由浏览器执行,不允许javascript访问本地硬盘,以及操作服务器上的数据,只用来显示浏览器的网页效果和实时交互。
起源
Javascript 由 Netscape 网景公司于1995年着手开发。1996年,Javascript 1.0 最初应用于 Netscape Navigator 2 。
Javascript实现
Javascript 和 ECMAScript 实际上不是同一个东西,Javascript含义更为广泛。
Javascript 的三个组成部分如下
核心ECMAScript
文档对象模型DOM
浏览器对象模型BOM
DOM 和 BOM 是两个比较难的概念,后面的章节会专门提及。
ECMAscript标准
(1)ECMA-262实际上只是这门语言的基础,开发者们、浏览器厂商们在此基础上构建更完善的脚本语言,才能实现效果。
(2)ECMA-262规定的内容有以下几个方面:
语法
类型
语句
关键字
保留字
操作符
对象
(3)版本历史
1997年,以Javascript1.1为蓝本制定ECMA-262标准第1版,命名为ECMAScript
1998年,ECMAScript成为ISO国际标准(ISO/IEC-16262)
1998年,ECMAScript第2版,无更新,跟ISO/IEC-16262保持统一
1999年,ECMAScript第3版,做出了很大的修改完善,使ECMAScript成为一门真正的编程语言
ECMAScript第4版,因改动过大被否决。被小幅改动的ECMAScript 3.1所取代
2009年,ECMAScript第5版,就是ECMAScript 3.1,所谓的es5,现在的主流
2011年,ECMAscript 5.1版发布,并且成为ISO国际标准(ISO/IEC 16262:2011)
2015年,ECMAScript第6版,称之es6或者es2015,本书未涉及,但主流浏览器大部分已兼容,即将成为主流。
为了更频繁地发布包含小规模增量更新的新版本,以后的版本都会使用年份命名,如es2016。
相关概念
(1)ECMA
European Computer Manufactures Association,中文名“欧洲计算机制造商协会”,1994年后改名为:Ecma International——ECMA国际。成立于1961年,总部位于日内瓦。
ECMA的成员由一些世界主流的技术公司组成,有不同的会员级别和准入规则。
负责的标准有:
ECMAScript语言规范(JavaScript)
CD-ROM格式
C#语言规范
C++/CLI语言规范
通用语言基础结构(CLI)
Eiffel语言
电子产品环境化设计要素
Universal 3D标准
OOXML
大名鼎鼎的 TC39 实际上是ECMA协会下的“39号技术委员会”,专门负责制定ECMAScript标准。
(2)ISO
International Organization for Standardization,中文名为“国际标准化组织”,成立于1946年,总部也是位于日内瓦,是一个国家层面的组织,参加者包括各会员国的国家标准机构和主要公司。
ISO负责目前绝大部分领域(包括军工、石油、船舶等垄断行业)的标准化活动。
(3)W3C
World Wide Web Consortium 万维网联盟,成立于1994年,由美国麻省理工学院计算机科学和人工智能实验室 (MIT CSAIL),总部位于法国的欧洲信息数学研究联盟 (ERCIM) 和日本的庆应大学(Keio University)联合运作,并且在世界范围内拥有分支办事处。
搜到的资料显示,北京航空航天大学也是W3C全球总部之一。
以上,就是《Javascript高级程序设计》第一章的学习笔记,部分知识补充于网络。
网友评论