JavaScript - 历史

JavaScript 的历史

你好,有抱负的程序员们!今天,我们将踏上一段迷人的旅程,探索 JavaScript 的历史。作为你友好的邻里计算机老师,我很兴奋能与你们分享这个故事。相信我,这比你们想象的要有意思得多!

JavaScript - History

JavaScript,通常缩写为 JS,是当今世界上最受欢迎的编程语言之一。但你们知道吗,它只用了10天就被创造出来了?让我们深入它的起源。

JavaScript 的诞生

回到1995年,一位才华横溢的程序员 Brendan Eich 在 Netscape Communications 工作。当时,互联网还非常年轻,网站大多是静态的。Netscape 想让网页变得更加动态和互动。他们指派 Eich 创建一种可以在他们的浏览器 Netscape Navigator 中运行的编程语言。

Eich 接受了挑战,在短短10天内,他创建了 JavaScript 的第一个版本。最初,它被称为 "Mocha",然后短暂地称为 "LiveScript",最后确定为 "JavaScript"。这个名字是为了借助 Java 的流行度,尽管这两种语言有很大的不同!

以下是一个早期的 JavaScript 示例:

alert("Hello, World!");

这段代码会在浏览器中创建一个带有消息 "Hello, World!" 的弹出框。简单,但在当时却是革命性的!

JavaScript 的标准化

随着 JavaScript 的普及,它需要被标准化。1997年,JavaScript 被提交给 ECMA International 进行标准化,结果是 ECMAScript 规范。ECMAScript 是该语言的官方名称,而 JavaScript 是最知名的实现。

以下是一个 JavaScript 语法演变的例子:

// ECMAScript 3 (1999)
var greeting = "Hello, World!";
alert(greeting);

// ECMAScript 6 (2015)
let greeting = "Hello, World!";
console.log(greeting);

注意我们是如何从 var 变量声明转移到 let,以及从 alert 输出到 console.log 的。这些变化使语言更加健壮和开发者友好。

JavaScript 历史表

让我们来看看 JavaScript 历史中的关键里程碑:

年份 事件
1995 JavaScript 由 Netscape 的 Brendan Eich 创建
1996 JavaScript 被提交给 ECMA International 进行标准化
1997 发布 ECMAScript 1
1998 发布 ECMAScript 2
1999 发布 ECMAScript 3
2009 发布 ECMAScript 5
2015 发布 ECMAScript 6 (ES6),带来了重大改进
2016-2021 每年发布带有增量更新的 ECMAScript

JavaScript 的未来

JavaScript 自其谦卑的起点以来已经取得了长足的进步,其未来看起来比以往任何时候都要光明。以下是一些令人兴奋的趋势:

1. Web Assembly

Web Assembly (WASM) 是一种二进制指令格式,允许高性能应用程序在网页浏览器中运行。虽然它不是 JavaScript 的直接竞争对手,但它对其进行了补充,允许开发者使用如 C++ 或 Rust 等语言来开发网页应用程序的性能关键部分。

2. 服务器端 JavaScript

凭借像 Node.js 这样的平台,JavaScript 已经超越了浏览器。以下是一个简单的 Node.js 服务器示例:

const http = require('http');

const server = http.createServer((req, res) => {
res.writeHead(200, {'Content-Type': 'text/plain'});
res.end('Hello, Server-Side JavaScript!');
});

server.listen(8080, () => {
console.log('Server running on port 8080');
});

这段代码创建了一个简单的 HTTP 服务器,当访问时,它会响应 "Hello, Server-Side JavaScript!"。

3. 浏览器中的机器学习

像 TensorFlow.js 这样的库直接将机器学习功能带到了浏览器。以下是一个简单的示例:

const model = tf.sequential();
model.add(tf.layers.dense({units: 1, inputShape: [1]}));

model.compile({loss: 'meanSquaredError', optimizer: 'sgd'});

const xs = tf.tensor2d([1, 2, 3, 4], [4, 1]);
const ys = tf.tensor2d([1, 3, 5, 7], [4, 1]);

model.fit(xs, ys, {epochs: 10}).then(() => {
model.predict(tf.tensor2d([5], [1, 1])).print();
});

这段代码创建了一个简单的机器学习模型,用于学习预测 y = 2x - 1。

JavaScript 浏览器支持

JavaScript 的一个优势是它出色的浏览器支持。所有现代网页浏览器都支持 JavaScript,包括:

  1. Google Chrome
  2. Mozilla Firefox
  3. Apple Safari
  4. Microsoft Edge
  5. Opera

每个浏览器都有自己的 JavaScript 引擎:

浏览器 JavaScript 引擎
Chrome V8
Firefox SpiderMonkey
Safari JavaScriptCore
Edge Chakra (旧) / V8 (新)

这些引擎解释并执行 JavaScript 代码,通常具有令人印象深刻的性能。以下是一个在所有现代浏览器上都工作的简单代码片段:

document.addEventListener('DOMContentLoaded', (event) => {
const button = document.createElement('button');
button.textContent = 'Click me!';
button.addEventListener('click', () => {
alert('Button clicked!');
});
document.body.appendChild(button);
});

这段代码创建了一个按钮,当点击时,会显示一个警告。它使用标准的 DOM 操作方法,这些方法在所有现代浏览器中都得到支持。

总之,JavaScript 从一个10天的项目成长为世界上最重要的编程语言之一,其历程令人难以置信。它不断进化和适应的能力使其在25年的时间里一直保持相关性,并且没有放缓的迹象。在你继续编程之旅时,记住你写的每一行 JavaScript 代码都是这个持续故事的一部分。快乐编码!

Credits: Image by storyset