• Stars
    star
    4,205
  • Rank 10,289 (Top 0.3 %)
  • Language
    TypeScript
  • Created over 4 years ago
  • Updated about 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

🇨🇳 《JavaScript 二十年》中文版

JavaScript 二十年

GitHub stars

纸质版

本项目已与博文视点合作推出纸质版,其版税收入将有 10% 捐献给 Mozilla,点击购买

原文简介

本书由 JavaScript 之父 Brendan Eich 与 ES6 规范首席作者 Allen Wirfs-Brock 联合编写,详细记载和解读了自 1995 年语言诞生到 2015 年 ES6 规范制定为止,共计 20 年的 JavaScript 语言演化历程。全书不仅讲解了大量语言技术细节层面的演进,更复盘了更高层面上规范制定与标准博弈中的历史成败,是一部讲述人类如何在商业与技术上的竞争合作中促进产业发展的故事。

这个故事相当漫长而复杂。全文分为四个部分,每部分都对应 JavaScript 演化历程中的一个主要阶段。各部分之间还有一段简短的插曲,介绍彼时的开发者们是如何看待与使用 JavaScript 的。

这四个部分依次如下:

  1. 语言诞生(The Origins of JavaScript),介绍了 JavaScript 的创建与早期发展,包括语言的诞生背景、命名方式、初始特性及其设计理念等。这一节还追溯了它在 Netscape 与其他公司最初的演化,例如微软的 JScript。
  2. 创立标准(Creating a Standard),介绍了从 JavaScript 到 ECMAScript 标准的历程。这主要涵盖 JavaScript 标准化工作的启动、规范的创建、相关贡献者以及决策方式等。
  3. 改革失败(Failed Reformations),介绍了在 Eich 离开后,缺乏「仁慈独裁者」的 ECMAScript 委员会修改语言的失败尝试。这主要涉及委员会的分裂、对 ES4 的两轮投入,以及 Flash 与 ActionScript 在其中的渊源等。
  4. 继往开来(Modernizing JavaScript),介绍了 2009 年 ES5 与 2015 年 ES6 这两个成功标准背后的故事,主要包括对 ES5 与 ES6 的目标、重大基础性更改与重要新特性的介绍与回顾。

目录

许可

本文基于 CC-BY-NC 4.0 许可,不限制非商用转载。

Allen Wirfs-Brock and Brendan Eich. 2020. JavaScript: the first 20 years. Proc. ACM Program. Lang. 4, HOPL, Article 77 (June 2020), 189 pages. DOI:https://doi.org/10.1145/3386327

More Repositories

1

beam

✨ Expressive WebGL
JavaScript
516
star
2

react-ssd1306

📟 A React Renderer for SSD1306 OLED chip on Raspberry Pi.
C
360
star
3

mocha1995

☕️ The world's first JavaScript engine written in 1995 by Brendan Eich, now compiled back to JS and WASM!
C
290
star
4

freecube

⚛ Solve Rubik's Cube with WebGL in 10KB.
JavaScript
127
star
5

sinomap

🌎 Super lightweight canvas map lib.
JavaScript
107
star
6

webgl-seminar

代码清晰、直接、可追溯的一系列 WebGL 示例
JavaScript
105
star
7

learn-wgpu-cn

🇨🇳 《Learn Wgpu》中文版
Rust
104
star
8

nativebird

🐦 Bluebird alternative within ~200 loc
JavaScript
78
star
9

minimal-js-runtime

A toy JavaScript runtime based on QuickJS and libuv.
C
66
star
10

bumpover

🚧 Async data transforming with simple rules.
JavaScript
65
star
11

merry8

📺 Chip-8 emulator for web.
JavaScript
53
star
12

vue-cmap

Vue China map visualizing component, supports drilldown and lazy loading.
JavaScript
39
star
13

fe-native-lang

Native language guide for FE developers.
C
31
star
14

crdt-and-local-first

A slide - WIP
Vue
28
star
15

HTML-Toy-Parser

一个玩具级的 HTML 转虚拟 DOM 编译器
JavaScript
27
star
16

ove-lang

👓 ove-lang, a language for his true fans.
HTML
26
star
17

vue-springbud

不是最简洁的 Vue 生产环境模板
JavaScript
24
star
18

MiyooSDK

🐳 Docker environment for developing Miyoo Linux apps.
Dockerfile
23
star
19

blog

📝 My tech blog.
JavaScript
22
star
20

psp-js

Modern JavaScript runtime for Sony PSP, based on rust-psp and QuickJS.
Rust
19
star
21

nano-mvc

Demo MVC framework in 40 lines, 1KB
JavaScript
18
star
22

slate-doc-cn

🇨🇳 Translation of Slate.js official doc.
14
star
23

rx-elevator-demo

Reactive Demo
JavaScript
14
star
24

flylog

Front end AOP logging and monotoring tool.
Vue
13
star
25

naming-style-demo

前端框架命名风格比较
JavaScript
12
star
26

learn-cs

💾 Resources learning basics.
Assembly
11
star
27

ustc-gpa

GPA calculator for USTCers
JavaScript
10
star
28

naiveScroll

Tiny jQuery full page scroll effect plugin.
JavaScript
10
star
29

repeater

📼 Record browser events as visual test case.
JavaScript
9
star
30

js-framework-intro

JavaScript 框架设计入门
9
star
31

render-adapters-poc

POC for customizing UI framework renderers.
JavaScript
6
star
32

gomoku

JavaScript Gomuku AI for Web
JavaScript
5
star
33

eslint-plugin-pangu-comment

Pangu whitespace for Chinese comments.
JavaScript
4
star
34

zlayer

⚡️ Image render layer with GPU acceleration.
JavaScript
4
star
35

psp-test-app

Simple test app based on rust-psp
Rust
4
star
36

icard-ustc

Consume record analyzer for USTCers
Python
3
star
37

examples

Static HTML examples just for fun :)
HTML
2
star
38

pages-cn

My Blog Dist HTML Pages
HTML
2
star
39

compilExpt

Experimental compiler-related JS project.
JavaScript
2
star
40

rollup-scaffold

A simple rollup config scaffold
JavaScript
2
star
41

visue

vue visualizing dev tool
JavaScript
2
star
42

slate-playground

Pluggable editor playground.
JavaScript
1
star
43

sikuli-coc

HTML
1
star
44

ck.js

cookie lib in 2 lines
JavaScript
1
star
45

legs

Light Easy Gulp Scaffold
JavaScript
1
star
46

n7books

Second hand book exchange platform for USTCers
PHP
1
star
47

nano-computed

explain how computed works in 30 lines.
JavaScript
1
star
48

imdoc

markdown documentation generator
CSS
1
star
49

Markdown-Table-Converter

Edit and reformat markdown table.
JavaScript
1
star
50

tennis-match-recorder

Tennis match recorder and more
JavaScript
1
star
51

ustc-ring

Graduation Ring Exchange Platfrom for USTCers
HTML
1
star