From 86cafffeaf68e792e5276a02baffd5321f4a40c0 Mon Sep 17 00:00:00 2001 From: qianguyihao Date: Wed, 4 Oct 2023 00:10:24 +0800 Subject: [PATCH] =?UTF-8?q?update:=20ECMAScript=20=E6=A0=87=E5=87=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../01-编程语言和JavaScript简介.md | 52 +++++++++---------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/04-JavaScript基础/01-编程语言和JavaScript简介.md b/04-JavaScript基础/01-编程语言和JavaScript简介.md index 4cbee6f..b26086d 100644 --- a/04-JavaScript基础/01-编程语言和JavaScript简介.md +++ b/04-JavaScript基础/01-编程语言和JavaScript简介.md @@ -167,7 +167,7 @@ int main(int argc, char const *argv[]) ### 2、解释型语言 -- 定义:在运行过程中(runtime)通过解释器**边翻译边执行**(也就是逐行翻译:翻译一行,执行一行),不需要事先一次性翻译。 +- 定义:在运行过程中(runtime)通过解释器**边翻译边执行**,也就是逐行翻译。不需要事先一次性翻译,而是在运行时,边翻译变执行(翻译一行,执行一行)。 - 优点:移植性好,跨平台。 @@ -175,6 +175,10 @@ int main(int argc, char const *argv[]) - 解释型语言举例:JavaScript、PHP、Python。 +为什么 JS 是解释型语言呢?这和浏览器的工作原理有关。浏览器中有一个专门的“JS 解析器”可以让 JS 边解析边执行。 + +由于少了事先编译这一步骤,所以解释型语言开发起来尤为方便,但是解释型语言运行较慢也是它的劣势。不过解释型语言中使用了 JIT 技术,使得运行速度得以改善。 + ### Java 语言 Java 语言是属于半编译半解释型语言。翻译过程: @@ -197,6 +201,10 @@ JavaScript 是 Sun 公司注册并授权给 Netscape 使用的商标。后来 Su 1996 年,微软为了抢占市场,推出了`JScript`在 IE3.0 中使用。 +### ECMAScript 标准 + +ECMAScript 是一种由 ECMA 组织制定和发布的脚本语言规范。 + 1996 年 11 月网景公司向 ECMA(European Computer Manufacturers Association,欧洲电脑制造商协会,属于国际标准化组织)提交了 JS的语言标准,将其成为国际标准,以此对抗微软。 - ECMA 的技术委员负责制定和审核这个标准,成员由业内的大公司派出的工程师组成。该委员会定期开会,所有的邮件讨论和会议记录,都是公开的。 @@ -208,6 +216,12 @@ JavaScript 是 Sun 公司注册并授权给 Netscape 使用的商标。后来 Su 同时期还有其他的网页语言,比如 VBScript、JScript 等等,但是后来都被 JavaScript 打败了,所以现在的浏览器中,只运行一种脚本语言就是 JavaScript。JavaScript 是世界上用的最多的**脚本语言**。 +JavaScript 是由公司开发而成的,问题是不便于其他的公司拓展和使用。所以 ECMA 组织,牵头制定了 JavaScript 的标准,取名为 ECMAScript。 + +简单来说,**ECMAScript 不是一门语言,而是一个标准**。ECMAScript 规定了 JS 的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套 JS 语法工业标准。 + +ECMAScript 在 2015 年 6 月,发布了 ECMAScript 6 版本(ES6),语言的能力更强,包含了很多新特性。 + ### JavaScript语言是个大杂烩 Brendan Eich 这位天才只用了10天就设计出了 JS,但这门语言当时更像是一个[大杂烩](https://wangdoc.com/javascript/basic/history): @@ -221,7 +235,10 @@ Brendan Eich 这位天才只用了10天就设计出了 JS,但这门语言当 由于设计时间太短,语言的一些细节考虑得不够严谨,导致后来很长一段时间,Javascript写出来的程序混乱不堪。所以,Javascript语言实际上是两种语言风格的混合体:(简化的)函数式编程+(简化的)面向对象编程。这是由Brendan Eich(函数式编程)与网景公司(面向对象编程)共同决定的。 -十八世纪英国文学家约翰逊博士有一句名言说得好:“它是好的,也是原创的,它的优秀之处并非原创,它的原创之处并不优秀。”'(It is both good and original; but the part that is good is not original, and the part that is original is not good.)" +十八世纪英国文学家约翰逊博士有一句名言说得好:“这个作品是好的,也是原创的,它的优秀之处并非原创,它的原创之处并不优秀。”(It is both good and original; but the part that is good is not original, and the part that is original is not good.) + + +后来,随着ES6语法的不断改进,JS语言越来越优秀。ECMA 和 ECMAScript 赋予了 JavaScript 新的能力和活力。 ### JavaScript 的发展:蒸蒸日上 @@ -284,8 +301,8 @@ boolean a; var a; // ES6 写法 -const a; -let a; +const b; +let c; ``` ### JavaScript 既是前端语言,又是后端语言 @@ -308,31 +325,12 @@ JavaScript 基础分为三个部分: 通俗理解就是:ECMAScript 是 JS 的语法;DOM 和 BOM 是浏览器运行环境为 JS 提供的 API。 -## JavaScript 的特点 +### JavaScript 的特点 -### 特点 1:解释型语言 +1、解释型语言。 +2、遵守ECMAScript 标准。 +3、单线程。 -JavaScript 简称 JS,是前端开发的一门脚本语言(解释型语言)。 - -**解释型语言**的意思是:程序执行之前,不需要事先被翻译为机器码;而是在运行时,边翻译边执行(翻译一行,执行一行)。关于解释型语言的详细介绍,上一篇文章有介绍。 - -为什么 JS 是解释型语言呢?这和浏览器的工作原理有关。浏览器中有一个专门的“JS 解析器”可以让 JS 边解析边执行。 - -由于少了事先编译这一步骤,所以解释型语言开发起来尤为方便,但是解释型语言运行较慢也是它的劣势。不过解释型语言中使用了 JIT 技术,使得运行速度得以改善。 - -### 特点 2:单线程 - -### 特点 3:ECMAScript 标准 - -ECMAScript 是一种由 ECMA 国际(前身为欧洲计算机制造商协会,英文名称是 European Computer Manufacturers Association)制定和发布的脚本语言规范。 - -JavaScript 是由公司开发而成的,问题是不便于其他的公司拓展和使用。所以欧洲的这个 ECMA 的组织,牵头制定 JavaScript 的标准,取名为 ECMAScript。 - -简单来说,**ECMAScript 不是一门语言,而是一个标准**。ECMAScript 规定了 JS 的编程语法和基础核心知识,是所有浏览器厂商共同遵守的一套 JS 语法工业标准。 - -ECMAScript 在 2015 年 6 月,发布了 ECMAScript 6 版本(ES6),语言的能力更强,包含了很多新特性),但也要考虑它的浏览器兼容性问题。 - -ECMA 赋予了 JavaScript 新的能力和活力。 ## 参考链接