JavaScript是如何来的~~

文章目录

  • 前言
  • 一、网络的诞生 ( The birth of the Web )
  • 二、Mosaic 浏览器
  • 三、Netscape 浏览器
  • 四、JavaScript的诞生 ~ 千呼万唤始出来
  • 总结


前言

例如:想要了解一门语言的发展历程,首先你得知道它是怎么来的,所以本文开篇介绍了网络的基本发展史,帮助读者更好的理解语言诞生的原因。


一、网络的诞生 ( The birth of the Web )

在1989年3月,Tim Berners-Lee 在 欧洲核子研究组织 (CERN) 写下了 Information Management:A Proposal,提出了Web作为全球超链接信息共享空间的想法。1990年9月,Mike Sendall(当时Tim的老板)批准了他的研究计划,允许他利用部分工作时间研发全球超文本系统,并支持他购置了一台NeXT cube电脑开展这项研发工作。

万维网最初的构想和发展是:为了满足世界各地大学和研究所的科学家之间自动信息共享的需求。

The World Wide Web was invented by British scientist Tim Berners-Lee in 1989 while working at CERN
万维网(WWW) 是英国科学家 蒂姆·伯纳斯-李 于1989年在欧洲核子研究中心工作时发明的

在这里插入图片描述

蒂姆曾经用一幅非常形象的图表明了他的创意(如下图),即通过一种超文本方式,把分布在网络上的不同计算机内的信息有机地结合在一起,通过超文本传输协议(HTTP)从任意的Web服务器转到一台Web浏览器上进行无障碍的信息检索。这个叫Web的软件还能支持图文并茂的信息,甚至还允许发布音频和视频。这就使得后来的互联网远程教育及在线购物等等得以实现!此外,互联网的许多其它功能,如E-mail、Telnet、FTP、WAIS等内容也都可通过Web框架进行实现。

Alt

蒂姆·伯纳斯-李 用这张图说明了WWW的创意,由原来不同计算机上的信息无法沟通,到现在可以用任何一台计算机对任何Web服务器上的信息库进行调用。

1990年10月,Tim编写了世界上 第一个Web浏览器(更确切的说,是浏览器+编辑器),Tim将其命名为 WorldWideWeb(见下图)。很久以后,为了避免程序和抽象信息空间(即今天意义上的万维网,World Wide Web,简称Web,现在的拼写是World Wide Web加空格)之间的混淆,这个 浏览器编辑器 被重新命名为Nexus。

在这里插入图片描述

欧洲核子研究中心的第一个网站 — 也是世界上的第一个网站 — 专门用于万维网项目本身,并托管在伯纳斯-李的NeXT计算机上。2013年,欧洲核子研究中心启动了一个项目,以恢复有史以来第一个网站 : info.cern.ch 。

在这里插入图片描述

◆ 第一个网站重建页面截图(图片来源:CERN):

在这里插入图片描述

1990年10月,Tim编写了世界上 第一个Web浏览器(更确切的说,是浏览器+编辑器),Tim将其命名为 WorldWideWeb(见下图)。很久以后,为了避免程序和抽象信息空间(即今天意义上的万维网,World Wide Web,简称Web,现在的拼写是World Wide Web加空格)之间的混淆,这个 浏览器编辑器 被重新命名为Nexus。

在这里插入图片描述

Tim Berners-Lee 意识到,如果每个人都能研究它的结构,他的发明的真正潜力就会真正发挥出来。接着他又做了一个意义深远的决定,他决定放弃发明专利,让所有人免费使用。

1993年4月30日, CERN 宣布 WorldWideWeb 为免费平台。


二、Mosaic 浏览器

源代码发布后,许多开发者受到启发发布了他们的产品。 1992 年到 1993 年间,又出现了很多其它的浏览器,他们基本完全复制了 WorldWideWeb,没有提供任何革命性的东西。

1993年,伊利诺伊大学,国家超级计算应用中心 (NCSA) 的编程专业学生马克·安德森 (Marc Andreessen) ,他创建了Mosaic(马赛克) 浏览器 并免费赠送给 200 万用户。

**它最大的特点是:**它在同一页面上显示图片和文字,而其他浏览器则在单独的窗口中打开它们。 Mosaic 用户可以自定义文档的背景、标题的字体和文本本身。

在这里插入图片描述

三、Netscape 浏览器

1994 年,Mosaic 项目的核心成员马克·安德森(Marc Andreessen)离职并创办了 Netscape(网景)公司。由于 Mosaic 的版权属于 NCSA,所以安德森又重新编写了一款新的浏览器(它基于马赛克的源代码),取名就叫做 Netscape Navigator(网景领航员)

有意思的是,这个项目还有一个内部开发代号叫做 Mozilla,它除了是 Godzilla(哥斯拉)的谐音外,还是 Mosaic Killa 的缩写,意思是要做 Mosaic 的终结者。

在这里插入图片描述

四、JavaScript的诞生 ~ 千呼万唤始出来

随着 Web 日益流行,网景发现浏览器需要有一种可以嵌入网页的 “脚本语言”,用来控制网页的交互行为。

比如验证用户输入的信息,在那个网速普通缓慢的时代,与服务器进行一次通信可能需要几十几秒,如果等待结束后,出现的是一个告诉你 “没有填写密码” 的提示,那你肯定会抓狂。

于是,这个任务交给了当时在网景工作的 Brendan Eich (布兰登·艾奇)。

在这里插入图片描述

他花了仅仅 10 天时间就把语言设计了出来,取名叫做 LiveScript,不过后来网景把 LiveScript 改名为 JavaScript,以便搭上媒体当时热烈炒作 Java 的顺风车。

在这里插入图片描述


总结

例如:以上就是今天要讲的内容,本文仅仅简单介绍了JavaScript的来源,后续使用会陆续更新~~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.xdnf.cn/news/148025.html

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

智能BI平台项目

1.项目介绍 BI商业智能:数据可视化、报表可视化系统 4)发布订阅 Resource 是基于名称进行查找的,而Spring框架中更常用的 Autowired 则是基于类型进行查找的。如果找不到匹配的bean,Autowired 会抛出异常,而 Resource…

EAGLE——探索混合编码器的多模态大型语言模型的设计空间

概述 准确解释复杂视觉信息的能力是多模态大型语言模型 (MLLM) 的关键重点。最近的研究表明,增强的视觉感知可显著减少幻觉并提高分辨率敏感任务(例如光学字符识别和文档分析)的性能。最近的几种 MLLM 通过利用视觉编码器的混合来实现这一点…

网络层协议 —— IP协议

目录 0.前言 1.IP协议的格式 2.IP地址 2.1IP地址的划分 国际间IP地址的划分 公有IP 私有IP 特殊的IP地址 国内IP地址的划分 2.2IP地址不足问题 2.3IP地址的功能 2.4如何使用IP地址 2.5IP地址的构成 3.网段划分 以前的方案 现在的方案 4.认识宏观网络 5.路由 …

SpringCloud config native 配置

SpringCloud config native 配置 1.概述 最近项目使用springCloud 框架,使用config搭建git作为配置中心。 在私有化部署中,出现很多比较麻烦的和鸡肋的设计。 每次部署都需要安装gitlab 有些环境安装完gitlab,外面不能访问,不给开…

QT实现升级进度条页面

一.功能说明 在Qt中实现固件升级的进度条显示窗口,你可以通过创建一个自定义的对话框(Dialog)来完成。这个对话框可以包含一个进度条(QProgressBar)、一些文本标签(QLabel)用于显示状态信息&am…

SSL 最长签发时间是多久?

在当今数字化的时代,网络安全变得至关重要。为了确保数据在网络传输中的安全性,SSL(Secure Sockets Layer,安全套接层)证书被广泛应用。那么,SSL最长签发时间是多久呢? SSL证书是一种数字证书&…

差分数组介绍

差分数组 差分数组介绍定义性质性质1: 计算数列第i项的值性质2: 计算数列第i项的前缀和应用场景差分数组具体示例【leetcode】370.区间加法题目描述题解【leetcode】1109. 航班预订统计题目描述题解【leetcode】2848.与车相交的点题目描述题解差分数组介绍 定义 对于已知有n个…

C#如何把写好的类编译成dll文件

1 新建一个类库项目 2 直接改写这个Class1.cs文件 3 记得要添加Windows.Forms引用 4 我直接把在别的项目中做好的cs文件搞到这里来,连文件名也改了(FilesDirectory.cs),这里using System.Windows.Forms不会报错,因为前…

制造解法 Manufactured Solutions 相关的论文的阅读笔记

Verification of Euler/Navier–Stokes codes using the method of manufactured solutions https://doi.org/10.1002/fld.660 粘性项与扩散项之间的平衡 For the Navier–Stokes simulations presented herein, the absolute viscosity is chosen to be a large constant va…

【Java】掌握Java:基础概念与核心技能

文章目录 前言:1. 注释2. 字面量3. 变量详解3.1 变量的定义3.2 变量里的数据存储原理3.3 数据类型3.4 关键字、标识符 4. 方法4.1 方法是啥?4.2 方法的完整定义格式4.3 方法如何使用:4.4 方法的其他形式4.5 方法的其他注意事项4.5.1 方法是可…

如何充分使用芝士AI呢?一文讲清楚助力论文完成无忧

为了解决各位学弟学妹们的论文烦恼,助力大家毕业无忧,芝士AI由985硕博团队的学长学姐们潜心研发出来的一款集齐论文选题、开题报告、论文初稿、论文查重、论文降重、论文降AIGC率、论文答辩稿、论文答辩PPT,一站式解决困扰大家已久的论文问题…

如何创建标准操作规程(SOP)[+模板]

创建、分发和管理流程文档和逐步说明的能力是确定企业成功的关键因素。许多组织依赖标准操作规程(SOP)作为基本形式的文档,指导他们的工作流程操作。 然而,SOP不仅仅是操作路线图;它们就像高性能车辆中的先进GPS系统一…

机器视觉-7 检测原理之预处理(图像增强)

在图像处理领域,图像增强是一个非常重要的技术,目的是通过调整图像的某些特征来改善图像的视觉效果,或为后续的图像分析和处理做准备。在 OpenCV 中,C 提供了多种图像增强方法,包括直方图均衡化、对比度拉伸、锐化、边…

双向链表-

链表特性:带头/不带头 循环/非循环 --->排列组合后,共有8种链表结构 一.双向链表的定义 前一个节点存了后一个节点的地址,后一个节点也存了前一个节点的地址,即循环链表 二.代码解析 //双向链表 //与非循环链表区别&#…

面试官:Spring是如何解决循依赖问题?

Spring 的循环依赖一直都是 Spring 中一个很重要的话题,一方面是 Spring 为了解决循环依赖做了很多工作,另一个方面是因为它是面试 Spring 的常客,因为他要求你看过 Spring 的源码,如果没有看过 Spring 源码你基本上是回答不了这个…

【Java】线程暂停比拼:wait() 和 sleep()的较量

欢迎浏览高耳机的博客 希望我们彼此都有更好的收获 感谢三连支持! 在Java多线程编程中,合理地控制线程的执行是至关重要的。wait()和sleep()是两个常用的方法,它们都可以用来暂停线程的执行,但它们之间存在着显著的差异。本文将详…

移动技术开发:RecyclerView瀑布流水果列表

1 实验名称 RecyclerView瀑布流水果列表 2 实验目的 掌握RecyclerView控件的实现方法和基本应用 3 实验源代码 布局文件代码&#xff1a; activity_main&#xff1a; <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android&q…

Mac系统Docker中SQLserver数据库文件恢复记录

Mac系统Docker中SQLserver数据库文件恢复记录 Mac想要安装SQLsever&#xff0c;通过docker去拉去镜像是最简单方法。 一、下载Docker Docker 下载安装&#xff1a; 需要‘科学上网’ 才能访问到docker官网。&#xff08; https://docs.docker.com/desktop/install/mac-ins…

18.2K Star,AI 高效视频监控摄像头

Hi&#xff0c;骚年&#xff0c;我是大 G&#xff0c;公众号「GitHub 指北」会推荐 GitHub 上有趣有用的项目&#xff0c;一分钟 get 一个优秀的开源项目&#xff0c;挖掘开源的价值&#xff0c;欢迎关注。 导语 在家庭和企业安防领域&#xff0c;实时视频监控是保障安全的核…

2024 SNERT 预备队招新 CTF 体验赛-Web

目录 1、robots 2、NOF12 3、get_post 4、好事慢磨 5、uploads 6、rce 7、ezsql 8、RCE 1、robots robots 协议又叫爬虫协议&#xff0c;访问 robots.txt 继续访问 /JAY.php 拿到 flag&#xff1a;flag{hello_Do_YOU_KONw_JAY!} 2、NOF12 F12 和右键都被禁用 方法&#…