igu623.fun Open in urlscan Pro
2600:9000:236e:bc00:a:116b:ca80:93a1  Public Scan

URL: https://igu623.fun/
Submission: On June 26 via api from BE — Scanned from DE

Form analysis 0 forms found in the DOM

Text Content

综上所述,TypeScript 有助于提高代码质量,保证代码安全,更适合用在大型的企业级项目。这就是为什么大量 JavaScript 项目转成
TypeScript 的原因。

上面示例中,不小心把message拼错了,写成messege。TypeScript 就会报错,指出没有定义过这个属性。JavaScript
遇到这种情况是不报错的。

当时,Windows 8 即将发布,它的应用程序开发除了使用 C# 和 Visual Basic,还可以使用 HTML +
JavaScript。微软希望,TypeScript 既能让 JavaScript 程序员快速上手,也能让 .Net 程序员感到熟悉。

请看下面的 JAVASCRIPT 代码。



类型信息可以部分替代代码文档,解释应该如何使用这些代码,熟练的开发者往往只看类型,就能大致推断代码的作用。借助类型信息,很多工具能够直接生成文档。
前面说了,TYPESCRIPT 的主要功能是为 JAVASCRIPT 添加类型系统。大家可能知道,JAVASCRIPT
语言本身就有一套自己的类型系统,比如数值123和字符串HELLO。


作为比较,TYPESCRIPT
是在开发阶段报错,这样有利于提早发现错误,避免使用时报错。另一方面,函数定义里面加入类型,具有提示作用,可以告诉开发者这个函数怎么用。
前面说了,TYPESCRIPT 的主要功能是为 JAVASCRIPT 添加类型系统。大家可能知道,JAVASCRIPT
语言本身就有一套自己的类型系统,比如数值123和字符串HELLO。

动态类型与静态类型

一旦确定某个值的类型,就意味着,这个值具有该类型的所有特征,可以进行该类型的所有运算。凡是适用该类型的地方,都可以使用这个值;凡是不适用该类型的地方,使用这个值都会报错。
修改他人的 JavaScript 代码,往往非常痛苦,项目越大越痛苦,因为不确定修改后是否会影响到其他部分的代码。
动态类型有非常高的灵活性,给予程序员很大的自由,静态类型将这些灵活性都剥夺了。
上面示例中,不小心把message拼错了,写成messege。TypeScript 就会报错,指出没有定义过这个属性。JavaScript
遇到这种情况是不报错的。



浏览器控制类:操作浏览器

标准库

此外,还有一种 WEBASSEMBLY 格式,它是 JAVASCRIPT
引擎的中间码格式,全部都是二进制代码。由于跳过了编译步骤,可以达到接近原生二进制代码的运行速度。各种语言(主要是 C 和 C++)通过编译成
WEBASSEMBLY,就可以在浏览器里面运行。

作为项目负责人,你不难招聘到数量众多的 JAVASCRIPT 程序员;作为开发者,你也不难找到一份 JAVASCRIPT 的工作。

(6)跨平台的桌面应用程序

JAVASCRIPT
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如ARRAY、DATE、MATH等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JAVASCRIPT 调用。以浏览器为例,它提供的额外 API 可以分成三大类。

JAVASCRIPT
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如ARRAY、DATE、MATH等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JAVASCRIPT 调用。以浏览器为例,它提供的额外 API 可以分成三大类。

直接进入:按下OPTION + COMMAND + J(MAC)或者CTRL + SHIFT + J(WINDOWS / LINUX)

标准库

进入控制台以后,就可以在提示符后输入代码,然后按ENTER键,代码就会执行。如果按SHIFT +
ENTER键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。



(1)学习环境无处不在

标准库

JAVASCRIPT 既支持类似 C
语言清晰的过程式编程,也支持灵活的函数式编程,可以用来写并发处理(CONCURRENT)。这些语法特性已经被证明非常强大,可以用于许多场合,尤其适用异步编程。





JAVASCRIPT 的标准还在快速进化中,并不断合理化,添加更适用的语法特性。



操控浏览器的能力

(5)内嵌脚本语言

目前,全世界几乎所有网页都使用 JAVASCRIPT。如果不用,网站的易用性和使用效率将大打折扣,无法成为操作便利、对用户友好的网站。





进入 CHROME 浏览器的“控制台”,有两种方法。

相比其他脚本语言(比如 PYTHON 或 RUBY),JAVASCRIPT
的语法相对简单一些,本身的语法特性并不是特别多。而且,那些语法中的复杂部分,也不是必需要学会。你完全可以只用简单命令,完成大部分的操作。



(2)简单性



JavaScript
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如Array、Date、Math等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JavaScript 调用。以浏览器为例,它提供的额外 API 可以分成三大类。

近年来,JAVASCRIPT 的使用范围,慢慢超越了浏览器,正在向通用的系统语言发展。

从语法角度看,JAVASCRIPT 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JAVASCRIPT
控制这些功能。但是,JAVASCRIPT 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎任何一个问题,JAVASCRIPT
都有多种解决方法。阅读本书的过程中,你会诧异于 JAVASCRIPT 语法的灵活性。

相比学习其他语言,学习 JAVASCRIPT 有一些有利条件。



(4)移动平台开发





NODE 项目使得 JAVASCRIPT 可以用于开发服务器端的大型项目,网站的前后端都用 JAVASCRIPT
开发已经成为了现实。有些嵌入式平台(RASPBERRY PI)能够安装 NODE,于是 JAVASCRIPT 就能为这些平台开发应用程序。

(3)数据库操作

直接进入:按下OPTION + COMMAND + J(MAC)或者CTRL + SHIFT + J(WINDOWS / LINUX)

广泛的使用领域

WEB 类:实现互联网的各种功能

JAVASCRIPT 甚至也可以用来操作数据库。NOSQL 数据库这个概念,本身就是在 JSON(JAVASCRIPT OBJECT
NOTATION)格式的基础上诞生的,大部分 NOSQL 数据库允许 JAVASCRIPT 直接操作。基于 SQL 语言的开源数据库 POSTGRESQL 支持
JAVASCRIPT 作为操作语言,可以部分取代 SQL 查询语言。

JAVASCRIPT 是一种轻量级的脚本语言。所谓“脚本语言”(SCRIPT
LANGUAGE),指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序(比如浏览器)的“脚本”。

JAVASCRIPT 语言有多个版本。本书的内容主要基于 ECMASCRIPT 5.1 版本,这是学习 JAVASCRIPT 语法的基础。ES6
和更新的语法请参考我写的《ECMASCRIPT 6入门》。

JAVASCRIPT 语言本身,虽然是一种解释型语言,但是在现代浏览器中,JAVASCRIPT
都是编译后运行。程序会被高度优化,运行效率接近二进制程序。而且,JAVASCRIPT 引擎正在快速发展,性能将越来越好。

CHROMIUM OS、WINDOWS 8 等操作系统直接支持 JAVASCRIPT 编写应用程序。MOZILLA 的 OPEN WEB APPS
项目、GOOGLE 的 CHROME APP 项目、GITHUB 的 ELECTRON 项目、以及 TIDESDK 项目,都可以用来编写运行于
WINDOWS、MAC OS 和 ANDROID 等多个桌面平台的程序,不依赖浏览器。

JAVASCRIPT
程序可以采用事件驱动(EVENT-DRIVEN)和非阻塞式(NON-BLOCKING)设计,在服务器端适合高并发环境,普通的硬件就可以承受很大的访问量。

尽管如此,目前看来,JavaScript 的地位还是无法动摇。加之,语言标准的快速进化,使得 JavaScript
功能日益增强,而语法缺陷和怪异之处得到了弥补。所以,JavaScript 还是值得学习,况且它的入门真的不难。

(7)小结

相比其他脚本语言(比如 PYTHON 或 RUBY),JAVASCRIPT
的语法相对简单一些,本身的语法特性并不是特别多。而且,那些语法中的复杂部分,也不是必需要学会。你完全可以只用简单命令,完成大部分的操作。

JavaScript
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。

(3)事件驱动和非阻塞式设计。

(6)跨平台的桌面应用程序

Chromium OS、Windows 8 等操作系统直接支持 JavaScript 编写应用程序。Mozilla 的 Open Web Apps
项目、Google 的 Chrome App 项目、GitHub 的 Electron 项目、以及 TideSDK 项目,都可以用来编写运行于
Windows、Mac OS 和 Android 等多个桌面平台的程序,不依赖浏览器。

(3)与主流语言的相似性

语言标准由 TC39 委员会负责制定,该委员会的运作是透明的,所有讨论都是开放的,会议记录都会对外公布。

标准库

如果宿主环境是服务器,则会提供各种操作系统的 API,比如文件操作 API、网络通信 API等等。这些你都可以在 NODE 环境中找到。

JavaScript 既支持类似 C
语言清晰的过程式编程,也支持灵活的函数式编程,可以用来写并发处理(concurrent)。这些语法特性已经被证明非常强大,可以用于许多场合,尤其适用异步编程。

Mozilla 基金会的手机操作系统 Firefox OS,更是直接将 JavaScript 作为操作系统的平台语言,但是很可惜这个项目没有成功。

从语法角度看,JavaScript 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JavaScript
控制这些功能。但是,JavaScript 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎任何一个问题,JavaScript
都有多种解决方法。阅读本书的过程中,你会诧异于 JavaScript 语法的灵活性。

广泛的使用领域

WEB 类:实现互联网的各种功能

JAVASCRIPT 的语法很类似 C/C++ 和 JAVA,如果学过这些语言(事实上大多数学校都教),JAVASCRIPT 的入门会非常容易。

JAVASCRIPT 的标准还在快速进化中,并不断合理化,添加更适用的语法特性。

实验环境

JAVASCRIPT
语言有一些显著特点,使得它非常值得学习。它既适合作为学习编程的入门语言,也适合当作日常开发的工作语言。它是目前最有希望、前途最光明的计算机语言之一。

强大的性能

标准库

社区支持和就业机会

DOM

Chromium OS、Windows 8 等操作系统直接支持 JavaScript 编写应用程序。Mozilla 的 Open Web Apps
项目、Google 的 Chrome App 项目、GitHub 的 Electron 项目、以及 TideSDK 项目,都可以用来编写运行于
Windows、Mac OS 和 Android 等多个桌面平台的程序,不依赖浏览器。

进入控制台以后,就可以在提示符后输入代码,然后按Enter键,代码就会执行。如果按Shift +
Enter键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。

(3)与主流语言的相似性



随着 HTML5 的出现,浏览器本身的功能越来越强,不再仅仅能浏览网页,而是越来越像一个平台,JavaScript
因此得以调用许多系统功能,比如操作本地文件、操作图片、调用摄像头和麦克风等等。这使得 JavaScript 可以完成许多以前无法想象的事情。

推荐安装 CHROME 浏览器,它的“开发者工具”(DEVELOPER TOOLS)里面的“控制台”(CONSOLE),就是运行 JAVASCRIPT
代码的理想环境。

此外,还有一种 WEBASSEMBLY 格式,它是 JAVASCRIPT
引擎的中间码格式,全部都是二进制代码。由于跳过了编译步骤,可以达到接近原生二进制代码的运行速度。各种语言(主要是 C 和 C++)通过编译成
WEBASSEMBLY,就可以在浏览器里面运行。

(2)支持编译运行。



(1)灵活的语法,表达力强。



PHONEGAP 项目就是将 JAVASCRIPT 和 HTML5 打包在一个容器之中,使得它能同时在 IOS 和安卓上运行。FACEBOOK 公司的
REACT NATIVE 项目则是将 JAVASCRIPT 写的组件,编译成原生组件,从而使它们具备优秀的性能。



浏览器控制类:操作浏览器

如果宿主环境是服务器,则会提供各种操作系统的 API,比如文件操作 API、网络通信 API等等。这些你都可以在 NODE 环境中找到。

JAVASCRIPT
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如ARRAY、DATE、MATH等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JAVASCRIPT 调用。以浏览器为例,它提供的额外 API 可以分成三大类。



强大的性能



著名程序员 JEFF ATWOOD 甚至提出了一条 “ATWOOD 定律”:

JAVASCRIPT 是一种开放的语言。它的标准 ECMA-262 是 ISO 国际标准,写得非常详尽明确;该标准的主要实现(比如 V8 和
SPIDERMONKEY 引擎)都是开放的,而且质量很高。这保证了这门语言不属于任何公司或个人,不存在版权和专利的问题。

为什么学习 JAVASCRIPT?





语言标准由 TC39 委员会负责制定,该委员会的运作是透明的,所有讨论都是开放的,会议记录都会对外公布。

NODE 项目使得 JAVASCRIPT 可以用于开发服务器端的大型项目,网站的前后端都用 JAVASCRIPT
开发已经成为了现实。有些嵌入式平台(RASPBERRY PI)能够安装 NODE,于是 JAVASCRIPT 就能为这些平台开发应用程序。

本教程包含大量的示例代码,只要电脑安装了浏览器,就可以用来实验了。读者可以一边读一边运行示例,加深理解。

开放性

标准库

目前,全世界几乎所有网页都使用 JAVASCRIPT。如果不用,网站的易用性和使用效率将大打折扣,无法成为操作便利、对用户友好的网站。

JAVASCRIPT 也正在成为手机应用的开发语言。一般来说,安卓平台使用 JAVA 语言开发,IOS 平台使用 OBJECTIVE-C 或 SWIFT
语言开发。许多人正在努力,让 JAVASCRIPT 成为各个平台的通用开发语言。

JavaScript
程序可以采用事件驱动(event-driven)和非阻塞式(non-blocking)设计,在服务器端适合高并发环境,普通的硬件就可以承受很大的访问量。

不同公司的 JavaScript 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。

(4)移动平台开发

为什么学习 JavaScript?

不同公司的 JavaScript 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。

操控浏览器的能力

JAVASCRIPT 甚至也可以用来操作数据库。NOSQL 数据库这个概念,本身就是在 JSON(JAVASCRIPT OBJECT
NOTATION)格式的基础上诞生的,大部分 NOSQL 数据库允许 JAVASCRIPT 直接操作。基于 SQL 语言的开源数据库 POSTGRESQL 支持
JAVASCRIPT 作为操作语言,可以部分取代 SQL 查询语言。



Web 类:实现互联网的各种功能

(5)内嵌脚本语言

(6)跨平台的桌面应用程序

DOM

语言标准由 TC39 委员会负责制定,该委员会的运作是透明的,所有讨论都是开放的,会议记录都会对外公布。

JAVASCRIPT 也是一种嵌入式(EMBEDDED)语言。它本身提供的核心语法不算很多,只能用来做一些数学和逻辑运算。JAVASCRIPT 本身不提供任何与
I/O(输入/输出)相关的 API,都要靠宿主环境(HOST)提供,所以 JAVASCRIPT 只合适嵌入更大型的应用程序环境,去调用宿主环境提供的底层
API。

对于一个互联网开发者来说,如果你想提供漂亮的网页、令用户满意的上网体验、各种基于浏览器的便捷功能、前后端之间紧密高效的联系,JAVASCRIPT
是必不可少的工具。

随着 HTML5 的出现,浏览器本身的功能越来越强,不再仅仅能浏览网页,而是越来越像一个平台,JAVASCRIPT
因此得以调用许多系统功能,比如操作本地文件、操作图片、调用摄像头和麦克风等等。这使得 JAVASCRIPT 可以完成许多以前无法想象的事情。

相比学习其他语言,学习 JAVASCRIPT 有一些有利条件。

浏览器 API

作为尝试,你可以将下面的程序复制到“控制台”,按下回车后,就可以看到运行结果。

相比其他脚本语言(比如 PYTHON 或 RUBY),JAVASCRIPT
的语法相对简单一些,本身的语法特性并不是特别多。而且,那些语法中的复杂部分,也不是必需要学会。你完全可以只用简单命令,完成大部分的操作。

开放性

全世界程序员都在使用 JAVASCRIPT,它有着极大的社区、广泛的文献和图书、丰富的代码资源。绝大部分你需要用到的功能,都有多个开源函数库可供选用。

JAVASCRIPT 甚至也可以用来操作数据库。NOSQL 数据库这个概念,本身就是在 JSON(JAVASCRIPT OBJECT
NOTATION)格式的基础上诞生的,大部分 NOSQL 数据库允许 JAVASCRIPT 直接操作。基于 SQL 语言的开源数据库 POSTGRESQL 支持
JAVASCRIPT 作为操作语言,可以部分取代 SQL 查询语言。

不同公司的 JAVASCRIPT 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。

广泛的使用领域



(2)支持编译运行。

WEB 类:实现互联网的各种功能

广泛的使用领域





(1)学习环境无处不在

Node 项目使得 JavaScript 可以用于开发服务器端的大型项目,网站的前后端都用 JavaScript
开发已经成为了现实。有些嵌入式平台(Raspberry Pi)能够安装 Node,于是 JavaScript 就能为这些平台开发应用程序。



浏览器 API



下载后请开启飞行模式安装
扫码下载
苹果安装提示
请使用Safari浏览器打开
安卓安装提示
建议UC/夸克浏览器打开
本APP属于特殊行业,偶尔会误报毒提醒,
如有报毒提示,请点击忽略,并开启飞行模式安装即可!

浏览器控制类:操作浏览器

(2)支持编译运行。

进入控制台以后,就可以在提示符后输入代码,然后按Enter键,代码就会执行。如果按Shift +
Enter键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。

不同公司的 JAVASCRIPT 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。

只要有浏览器,就能运行 JAVASCRIPT 程序;只要有文本编辑器,就能编写 JAVASCRIPT 程序。这意味着,几乎所有电脑都原生提供
JAVASCRIPT 学习环境,不用另行安装复杂的 IDE(集成开发环境)和编译器。

进入控制台以后,就可以在提示符后输入代码,然后按ENTER键,代码就会执行。如果按SHIFT +
ENTER键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。

JAVASCRIPT
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如ARRAY、DATE、MATH等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JAVASCRIPT 调用。以浏览器为例,它提供的额外 API 可以分成三大类。

JAVASCRIPT 语言本身,虽然是一种解释型语言,但是在现代浏览器中,JAVASCRIPT
都是编译后运行。程序会被高度优化,运行效率接近二进制程序。而且,JAVASCRIPT 引擎正在快速发展,性能将越来越好。

浏览器控制类:操作浏览器

NODE 项目使得 JAVASCRIPT 可以用于开发服务器端的大型项目,网站的前后端都用 JAVASCRIPT
开发已经成为了现实。有些嵌入式平台(RASPBERRY PI)能够安装 NODE,于是 JAVASCRIPT 就能为这些平台开发应用程序。

随着 HTML5 的出现,浏览器本身的功能越来越强,不再仅仅能浏览网页,而是越来越像一个平台,JavaScript
因此得以调用许多系统功能,比如操作本地文件、操作图片、调用摄像头和麦克风等等。这使得 JavaScript 可以完成许多以前无法想象的事情。

全世界程序员都在使用 JAVASCRIPT,它有着极大的社区、广泛的文献和图书、丰富的代码资源。绝大部分你需要用到的功能,都有多个开源函数库可供选用。

首先,它涉及大量的外部 API。JavaScript
要发挥作用,必须与其他组件配合,这些外部组件五花八门,数量极其庞大,几乎涉及网络应用的各个方面,掌握它们绝非易事。

越来越多的应用程序,将 JavaScript 作为内嵌的脚本语言,比如 Adobe 公司的著名 PDF 阅读器 Acrobat、Linux 桌面环境 GNOME
3。

JavaScript 既支持类似 C
语言清晰的过程式编程,也支持灵活的函数式编程,可以用来写并发处理(concurrent)。这些语法特性已经被证明非常强大,可以用于许多场合,尤其适用异步编程。



(7)小结

必须说明的是,虽然核心语法不难,但是 JAVASCRIPT 的复杂性体现在另外两个方面。

易学性

操控浏览器的能力

如果宿主环境是服务器,则会提供各种操作系统的 API,比如文件操作 API、网络通信 API等等。这些你都可以在 NODE 环境中找到。

此外,还有一种 WEBASSEMBLY 格式,它是 JAVASCRIPT
引擎的中间码格式,全部都是二进制代码。由于跳过了编译步骤,可以达到接近原生二进制代码的运行速度。各种语言(主要是 C 和 C++)通过编译成
WEBASSEMBLY,就可以在浏览器里面运行。



基本语法

开放性

不同公司的 JAVASCRIPT 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。



JAVASCRIPT 的所有值都是对象,这为程序员提供了灵活性和便利性。因为你可以很方便地、按照需要随时创造数据结构,不用进行麻烦的预定义。

JAVASCRIPT 既支持类似 C
语言清晰的过程式编程,也支持灵活的函数式编程,可以用来写并发处理(CONCURRENT)。这些语法特性已经被证明非常强大,可以用于许多场合,尤其适用异步编程。

JAVASCRIPT
程序可以采用事件驱动(EVENT-DRIVEN)和非阻塞式(NON-BLOCKING)设计,在服务器端适合高并发环境,普通的硬件就可以承受很大的访问量。

标准库

(1)浏览器的平台化

(7)小结

只要有浏览器,就能运行 JavaScript 程序;只要有文本编辑器,就能编写 JavaScript 程序。这意味着,几乎所有电脑都原生提供
JavaScript 学习环境,不用另行安装复杂的 IDE(集成开发环境)和编译器。

(7)小结

JAVASCRIPT 既支持类似 C
语言清晰的过程式编程,也支持灵活的函数式编程,可以用来写并发处理(CONCURRENT)。这些语法特性已经被证明非常强大,可以用于许多场合,尤其适用异步编程。

作为项目负责人,你不难招聘到数量众多的 JAVASCRIPT 程序员;作为开发者,你也不难找到一份 JAVASCRIPT 的工作。



相比其他脚本语言(比如 PYTHON 或 RUBY),JAVASCRIPT
的语法相对简单一些,本身的语法特性并不是特别多。而且,那些语法中的复杂部分,也不是必需要学会。你完全可以只用简单命令,完成大部分的操作。

目前,全世界几乎所有网页都使用 JavaScript。如果不用,网站的易用性和使用效率将大打折扣,无法成为操作便利、对用户友好的网站。

此外,还有一种 WebAssembly 格式,它是 JavaScript
引擎的中间码格式,全部都是二进制代码。由于跳过了编译步骤,可以达到接近原生二进制代码的运行速度。各种语言(主要是 C 和 C++)通过编译成
WebAssembly,就可以在浏览器里面运行。

JavaScript
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。

(3)事件驱动和非阻塞式设计。



社区支持和就业机会



JAVASCRIPT
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。

目前,已经嵌入 JavaScript 的宿主环境有多种,最常见的环境就是浏览器,另外还有服务器环境,也就是 Node 项目。

基本语法



JavaScript
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如Array、Date、Math等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JavaScript 调用。以浏览器为例,它提供的额外 API 可以分成三大类。





JAVASCRIPT 语言有多个版本。本书的内容主要基于 ECMASCRIPT 5.1 版本,这是学习 JAVASCRIPT 语法的基础。ES6
和更新的语法请参考我写的《ECMASCRIPT 6入门》。

可以预期,JavaScript
最终将能让你只用一种语言,就开发出适应不同平台(包括桌面端、服务器端、手机端)的程序。早在2013年9月的统计之中,JavaScript 就是当年 GitHub
上使用量排名第一的语言。

(1)学习环境无处不在

(2)简单性

如果宿主环境是服务器,则会提供各种操作系统的 API,比如文件操作 API、网络通信 API等等。这些你都可以在 NODE 环境中找到。

必须说明的是,虽然核心语法不难,但是 JAVASCRIPT 的复杂性体现在另外两个方面。

进入 CHROME 浏览器的“控制台”,有两种方法。

尽管如此,目前看来,JAVASCRIPT 的地位还是无法动摇。加之,语言标准的快速进化,使得 JAVASCRIPT
功能日益增强,而语法缺陷和怪异之处得到了弥补。所以,JAVASCRIPT 还是值得学习,况且它的入门真的不难。

JAVASCRIPT 语言本身,虽然是一种解释型语言,但是在现代浏览器中,JAVASCRIPT
都是编译后运行。程序会被高度优化,运行效率接近二进制程序。而且,JAVASCRIPT 引擎正在快速发展,性能将越来越好。

JAVASCRIPT 语言有多个版本。本书的内容主要基于 ECMASCRIPT 5.1 版本,这是学习 JAVASCRIPT 语法的基础。ES6
和更新的语法请参考我写的《ECMASCRIPT 6入门》。

对于一个互联网开发者来说,如果你想提供漂亮的网页、令用户满意的上网体验、各种基于浏览器的便捷功能、前后端之间紧密高效的联系,JAVASCRIPT
是必不可少的工具。

JAVASCRIPT 语言有多个版本。本书的内容主要基于 ECMASCRIPT 5.1 版本,这是学习 JAVASCRIPT 语法的基础。ES6
和更新的语法请参考我写的《ECMASCRIPT 6入门》。

(5)内嵌脚本语言

广泛的使用领域

JAVASCRIPT 语言有多个版本。本书的内容主要基于 ECMASCRIPT 5.1 版本,这是学习 JAVASCRIPT 语法的基础。ES6
和更新的语法请参考我写的《ECMASCRIPT 6入门》。

JAVASCRIPT 也正在成为手机应用的开发语言。一般来说,安卓平台使用 JAVA 语言开发,IOS 平台使用 OBJECTIVE-C 或 SWIFT
语言开发。许多人正在努力,让 JAVASCRIPT 成为各个平台的通用开发语言。

JAVASCRIPT
语言有一些显著特点,使得它非常值得学习。它既适合作为学习编程的入门语言,也适合当作日常开发的工作语言。它是目前最有希望、前途最光明的计算机语言之一。

著名程序员 JEFF ATWOOD 甚至提出了一条 “ATWOOD 定律”:

JAVASCRIPT 语言本身,虽然是一种解释型语言,但是在现代浏览器中,JAVASCRIPT
都是编译后运行。程序会被高度优化,运行效率接近二进制程序。而且,JAVASCRIPT 引擎正在快速发展,性能将越来越好。



(1)灵活的语法,表达力强。

JavaScript 的标准还在快速进化中,并不断合理化,添加更适用的语法特性。

易学性

(1)灵活的语法,表达力强。

目前,全世界几乎所有网页都使用 JAVASCRIPT。如果不用,网站的易用性和使用效率将大打折扣,无法成为操作便利、对用户友好的网站。



JAVASCRIPT 也是一种嵌入式(EMBEDDED)语言。它本身提供的核心语法不算很多,只能用来做一些数学和逻辑运算。JAVASCRIPT 本身不提供任何与
I/O(输入/输出)相关的 API,都要靠宿主环境(HOST)提供,所以 JAVASCRIPT 只合适嵌入更大型的应用程序环境,去调用宿主环境提供的底层
API。





只要有浏览器,就能运行 JAVASCRIPT 程序;只要有文本编辑器,就能编写 JAVASCRIPT 程序。这意味着,几乎所有电脑都原生提供
JAVASCRIPT 学习环境,不用另行安装复杂的 IDE(集成开发环境)和编译器。

必须说明的是,虽然核心语法不难,但是 JAVASCRIPT 的复杂性体现在另外两个方面。

近年来,JAVASCRIPT 的使用范围,慢慢超越了浏览器,正在向通用的系统语言发展。



JavaScript 甚至也可以用来操作数据库。NoSQL 数据库这个概念,本身就是在 JSON(JavaScript Object
Notation)格式的基础上诞生的,大部分 NoSQL 数据库允许 JavaScript 直接操作。基于 SQL 语言的开源数据库 PostgreSQL 支持
JavaScript 作为操作语言,可以部分取代 SQL 查询语言。

(1)学习环境无处不在

尽管如此,目前看来,JAVASCRIPT 的地位还是无法动摇。加之,语言标准的快速进化,使得 JAVASCRIPT
功能日益增强,而语法缺陷和怪异之处得到了弥补。所以,JAVASCRIPT 还是值得学习,况且它的入门真的不难。

(6)跨平台的桌面应用程序

进入控制台以后,就可以在提示符后输入代码,然后按ENTER键,代码就会执行。如果按SHIFT +
ENTER键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。



JAVASCRIPT 的所有值都是对象,这为程序员提供了灵活性和便利性。因为你可以很方便地、按照需要随时创造数据结构,不用进行麻烦的预定义。



JAVASCRIPT
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。

作为尝试,你可以将下面的程序复制到“控制台”,按下回车后,就可以看到运行结果。

此外,还有一种 WEBASSEMBLY 格式,它是 JAVASCRIPT
引擎的中间码格式,全部都是二进制代码。由于跳过了编译步骤,可以达到接近原生二进制代码的运行速度。各种语言(主要是 C 和 C++)通过编译成
WEBASSEMBLY,就可以在浏览器里面运行。



目前,已经嵌入 JAVASCRIPT 的宿主环境有多种,最常见的环境就是浏览器,另外还有服务器环境,也就是 NODE 项目。





若无法弹出下载,请重试或使用uc/夸克浏览器打开
安卓手机下载

安卓安装包报毒解决方案
本APP属于特殊行业,偶尔会误报毒提醒,
如有报毒提示,请点击忽略,并开启飞行模式安装即可!

APP下载启动中...

越来越多的应用程序,将 JavaScript 作为内嵌的脚本语言,比如 Adobe 公司的著名 PDF 阅读器 Acrobat、Linux 桌面环境 GNOME
3。

Node 项目使得 JavaScript 可以用于开发服务器端的大型项目,网站的前后端都用 JavaScript
开发已经成为了现实。有些嵌入式平台(Raspberry Pi)能够安装 Node,于是 JavaScript 就能为这些平台开发应用程序。

JAVASCRIPT 的性能优势体现在以下方面。

JAVASCRIPT 甚至也可以用来操作数据库。NOSQL 数据库这个概念,本身就是在 JSON(JAVASCRIPT OBJECT
NOTATION)格式的基础上诞生的,大部分 NOSQL 数据库允许 JAVASCRIPT 直接操作。基于 SQL 语言的开源数据库 POSTGRESQL 支持
JAVASCRIPT 作为操作语言,可以部分取代 SQL 查询语言。

语言标准由 TC39 委员会负责制定,该委员会的运作是透明的,所有讨论都是开放的,会议记录都会对外公布。

JAVASCRIPT
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。

JAVASCRIPT 既支持类似 C
语言清晰的过程式编程,也支持灵活的函数式编程,可以用来写并发处理(CONCURRENT)。这些语法特性已经被证明非常强大,可以用于许多场合,尤其适用异步编程。

(2)简单性

标准库

JAVASCRIPT 语言本身,虽然是一种解释型语言,但是在现代浏览器中,JAVASCRIPT
都是编译后运行。程序会被高度优化,运行效率接近二进制程序。而且,JAVASCRIPT 引擎正在快速发展,性能将越来越好。

推荐安装 CHROME 浏览器,它的“开发者工具”(DEVELOPER TOOLS)里面的“控制台”(CONSOLE),就是运行 JAVASCRIPT
代码的理想环境。

(3)与主流语言的相似性

从语法角度看,JAVASCRIPT 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JAVASCRIPT
控制这些功能。但是,JAVASCRIPT 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎任何一个问题,JAVASCRIPT
都有多种解决方法。阅读本书的过程中,你会诧异于 JAVASCRIPT 语法的灵活性。

强大的性能

作为尝试,你可以将下面的程序复制到“控制台”,按下回车后,就可以看到运行结果。

JAVASCRIPT 是一种轻量级的脚本语言。所谓“脚本语言”(SCRIPT
LANGUAGE),指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序(比如浏览器)的“脚本”。



Web 类:实现互联网的各种功能

WEB 类:实现互联网的各种功能



JAVASCRIPT
语言有一些显著特点,使得它非常值得学习。它既适合作为学习编程的入门语言,也适合当作日常开发的工作语言。它是目前最有希望、前途最光明的计算机语言之一。

可以预期,JAVASCRIPT
最终将能让你只用一种语言,就开发出适应不同平台(包括桌面端、服务器端、手机端)的程序。早在2013年9月的统计之中,JAVASCRIPT 就是当年 GITHUB
上使用量排名第一的语言。

可以预期,JAVASCRIPT
最终将能让你只用一种语言,就开发出适应不同平台(包括桌面端、服务器端、手机端)的程序。早在2013年9月的统计之中,JAVASCRIPT 就是当年 GITHUB
上使用量排名第一的语言。

(1)浏览器的平台化

从语法角度看,JAVASCRIPT 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JAVASCRIPT
控制这些功能。但是,JAVASCRIPT 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎任何一个问题,JAVASCRIPT
都有多种解决方法。阅读本书的过程中,你会诧异于 JAVASCRIPT 语法的灵活性。



NODE 项目使得 JAVASCRIPT 可以用于开发服务器端的大型项目,网站的前后端都用 JAVASCRIPT
开发已经成为了现实。有些嵌入式平台(RASPBERRY PI)能够安装 NODE,于是 JAVASCRIPT 就能为这些平台开发应用程序。



JAVASCRIPT
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。



从语法角度看,JAVASCRIPT 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JAVASCRIPT
控制这些功能。但是,JAVASCRIPT 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎任何一个问题,JAVASCRIPT
都有多种解决方法。阅读本书的过程中,你会诧异于 JAVASCRIPT 语法的灵活性。

JAVASCRIPT 也正在成为手机应用的开发语言。一般来说,安卓平台使用 JAVA 语言开发,IOS 平台使用 OBJECTIVE-C 或 SWIFT
语言开发。许多人正在努力,让 JAVASCRIPT 成为各个平台的通用开发语言。



进入控制台以后,就可以在提示符后输入代码,然后按ENTER键,代码就会执行。如果按SHIFT +
ENTER键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。



相比其他脚本语言(比如 Python 或 Ruby),JavaScript
的语法相对简单一些,本身的语法特性并不是特别多。而且,那些语法中的复杂部分,也不是必需要学会。你完全可以只用简单命令,完成大部分的操作。

进入控制台以后,就可以在提示符后输入代码,然后按Enter键,代码就会执行。如果按Shift +
Enter键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。

Mozilla 基金会的手机操作系统 Firefox OS,更是直接将 JavaScript 作为操作系统的平台语言,但是很可惜这个项目没有成功。

JAVASCRIPT
语言有一些显著特点,使得它非常值得学习。它既适合作为学习编程的入门语言,也适合当作日常开发的工作语言。它是目前最有希望、前途最光明的计算机语言之一。

进入控制台以后,就可以在提示符后输入代码,然后按Enter键,代码就会执行。如果按Shift +
Enter键,就是代码换行,不会触发执行。建议阅读本教程时,将代码复制到控制台进行实验。

强大的性能

目前,全世界几乎所有网页都使用 JavaScript。如果不用,网站的易用性和使用效率将大打折扣,无法成为操作便利、对用户友好的网站。

JavaScript
的核心语法部分相当精简,只包括两个部分:基本的语法构造(比如操作符、控制结构、语句)和标准库(就是一系列具有各种功能的对象比如Array、Date、Math等)。除此之外,各种宿主环境提供额外的
API(即只能在该环境使用的接口),以便 JavaScript 调用。以浏览器为例,它提供的额外 API 可以分成三大类。

可以预期,JavaScript
最终将能让你只用一种语言,就开发出适应不同平台(包括桌面端、服务器端、手机端)的程序。早在2013年9月的统计之中,JavaScript 就是当年 GitHub
上使用量排名第一的语言。

不同公司的 JAVASCRIPT 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。

JAVASCRIPT 是一种开放的语言。它的标准 ECMA-262 是 ISO 国际标准,写得非常详尽明确;该标准的主要实现(比如 V8 和
SPIDERMONKEY 引擎)都是开放的,而且质量很高。这保证了这门语言不属于任何公司或个人,不存在版权和专利的问题。



相比学习其他语言,学习 JavaScript 有一些有利条件。

社区支持和就业机会

此外,还有一种 WebAssembly 格式,它是 JavaScript
引擎的中间码格式,全部都是二进制代码。由于跳过了编译步骤,可以达到接近原生二进制代码的运行速度。各种语言(主要是 C 和 C++)通过编译成
WebAssembly,就可以在浏览器里面运行。

(3)与主流语言的相似性

首先,它涉及大量的外部 API。JAVASCRIPT
要发挥作用,必须与其他组件配合,这些外部组件五花八门,数量极其庞大,几乎涉及网络应用的各个方面,掌握它们绝非易事。

本书主要介绍 JAVASCRIPT 核心语法和浏览器网页开发的基本知识,不涉及 NODE。全书可以分成以下四大部分。

JavaScript
的发明目的,就是作为浏览器的内置脚本语言,为网页开发者提供操控浏览器的能力。它是目前唯一一种通用的浏览器脚本语言,所有浏览器都支持。它可以让网页呈现各种特殊效果,为用户提供良好的互动体验。

WEB 类:实现互联网的各种功能

随着 HTML5 的出现,浏览器本身的功能越来越强,不再仅仅能浏览网页,而是越来越像一个平台,JavaScript
因此得以调用许多系统功能,比如操作本地文件、操作图片、调用摄像头和麦克风等等。这使得 JavaScript 可以完成许多以前无法想象的事情。

JAVASCRIPT 是一种轻量级的脚本语言。所谓“脚本语言”(SCRIPT
LANGUAGE),指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序(比如浏览器)的“脚本”。

(1)学习环境无处不在

操控浏览器的能力

目前,已经嵌入 JAVASCRIPT 的宿主环境有多种,最常见的环境就是浏览器,另外还有服务器环境,也就是 NODE 项目。

近年来,JAVASCRIPT 的使用范围,慢慢超越了浏览器,正在向通用的系统语言发展。

基本语法

语言标准由 TC39 委员会负责制定,该委员会的运作是透明的,所有讨论都是开放的,会议记录都会对外公布。

JAVASCRIPT 也是一种嵌入式(EMBEDDED)语言。它本身提供的核心语法不算很多,只能用来做一些数学和逻辑运算。JAVASCRIPT 本身不提供任何与
I/O(输入/输出)相关的 API,都要靠宿主环境(HOST)提供,所以 JAVASCRIPT 只合适嵌入更大型的应用程序环境,去调用宿主环境提供的底层
API。

强大的性能

社区支持和就业机会

(5)内嵌脚本语言

其次,JavaScript 语言有一些设计缺陷。某些地方相当不合理,另一些地方则会出现怪异的运行结果。学习
JavaScript,很大一部分时间是用来搞清楚哪些地方有陷阱。Douglas Crockford 写过一本有名的书,名字就叫《JavaScript: The
Good Parts》,言下之意就是这门语言不好的地方很多,必须写一本书才能讲清楚。另外一些程序员则感到,为了更合理地编写 JavaScript 程序,就不能用
JavaScript 来写,而必须发明新的语言,比如 CoffeeScript、TypeScript、Dart 这些新语言的发明目的,多多少少都有这个因素。

可以预期,JAVASCRIPT
最终将能让你只用一种语言,就开发出适应不同平台(包括桌面端、服务器端、手机端)的程序。早在2013年9月的统计之中,JAVASCRIPT 就是当年 GITHUB
上使用量排名第一的语言。

(4)移动平台开发

(1)浏览器的平台化

JAVASCRIPT 的语法很类似 C/C++ 和 JAVA,如果学过这些语言(事实上大多数学校都教),JAVASCRIPT 的入门会非常容易。

社区支持和就业机会

(3)与主流语言的相似性

JAVASCRIPT
语言有一些显著特点,使得它非常值得学习。它既适合作为学习编程的入门语言,也适合当作日常开发的工作语言。它是目前最有希望、前途最光明的计算机语言之一。



只要有浏览器,就能运行 JAVASCRIPT 程序;只要有文本编辑器,就能编写 JAVASCRIPT 程序。这意味着,几乎所有电脑都原生提供
JAVASCRIPT 学习环境,不用另行安装复杂的 IDE(集成开发环境)和编译器。



(4)移动平台开发



浏览器 API

JAVASCRIPT 的所有值都是对象,这为程序员提供了灵活性和便利性。因为你可以很方便地、按照需要随时创造数据结构,不用进行麻烦的预定义。

(5)内嵌脚本语言



不同公司的 JAVASCRIPT 运行环境,兼容性很好,程序不做调整或只做很小的调整,就能在所有浏览器上运行。

JAVASCRIPT 是一种轻量级的脚本语言。所谓“脚本语言”(SCRIPT
LANGUAGE),指的是它不具备开发操作系统的能力,而是只用来编写控制其他大型应用程序(比如浏览器)的“脚本”。

近年来,JAVASCRIPT 的使用范围,慢慢超越了浏览器,正在向通用的系统语言发展。

著名程序员 Jeff Atwood 甚至提出了一条 “Atwood 定律”:

社区支持和就业机会

从语法角度看,JAVASCRIPT 语言是一种“对象模型”语言。各种宿主环境通过这个模型,描述自己的功能和操作接口,从而通过 JAVASCRIPT
控制这些功能。但是,JAVASCRIPT 并不是纯粹的“面向对象语言”,还支持其他编程范式(比如函数式编程)。这导致几乎任何一个问题,JAVASCRIPT
都有多种解决方法。阅读本书的过程中,你会诧异于 JAVASCRIPT 语法的灵活性。

由于每个值、每个变量、每个运算符都有严格的类型约束,TypeScript 就能轻松发现拼写错误、语义错误和方法调用错误,节省程序员的时间。

静态类型的缺点

TYPESCRIPT 引入了一个更强大、更严格的类型系统,属于静态类型语言。
2023年,TYPESCRIPT 5.0 版本发布。


(1)丧失了动态类型的代码灵活性。


(4)提供了代码文档。


2014年,TYPESCRIPT 1.0 版本发布。同年,代码仓库搬到了 GITHUB。


它的目的并不是创造一种全新语言,而是增强 JAVASCRIPT 的功能,使其更适合多人合作的企业级项目。
静态类型的优点


静态类型有很多好处,这也是 TYPESCRIPT 想要达到的目的。
类型(TYPE)指的是一组具有相同特征的值。如果两个值具有某种共同的特征,就可以说,它们属于同一种类型。

TypeScript 对 JavaScript 添加的最主要部分,就是一个独立的类型系统。
上面示例中,不小心把message拼错了,写成messege。TypeScript 就会报错,指出没有定义过这个属性。JavaScript
遇到这种情况是不报错的。
TypeScript 依赖 JavaScript 生态,需要用到很多外部模块。但是,过去大部分 JavaScript 项目都没有做 TypeScript
适配,虽然可以自己动手做适配,不过使用时难免还是会有一些兼容性问题。


(2)有利于发现错误。

下面简要介绍 TYPESCRIPT 的发展历史。

(1)丧失了动态类型的代码灵活性。