本文系统介绍JavaScript的发展历史、核心组成(ECMAScript、DOM、BOM)及浏览器执行原理。重点解析行内式、内嵌式和外部JS文件三种代码嵌入方法,结合具体HTML标签示例,帮助初学者快速掌握JS基础应用与最佳实践。
JavaScript的发展历史
- 该语言由布兰登·艾奇(Brendan Eich,1961年出生)创造。
- 1995年,他仅用10天时间便完成了JavaScript的设计工作。
- 网景公司最初将其命名为LiveScript,随后在与Sun公司合作后改名为JavaScript(此举很大程度上是为了借助当时Java的热度)。
JavaScript是什么?
- JavaScript是目前全球最流行的编程语言之一,属于运行在客户端的脚本语言(Script意为脚本)。
- 脚本语言的特点是不需要预先编译,而是由JavaScript解释器(即JS引擎)在运行过程中逐行解释并执行代码。
- 如今,基于Node.js技术,JavaScript也可用于服务器端编程。

JavaScript的主要作用
- 实现表单的动态校验(例如密码强度检测),这也是JS最初被设计出来的目的。
- 制作网页特效。
- 进行服务端开发(使用Node.js)。
- 开发桌面应用程序(使用Electron,例如VS Code就是基于JS开发的)。
- 开发App(使用Cordova)。
- 控制硬件及物联网设备(使用Ruff)。
- 进行游戏开发(使用cocos2d-js)。
浏览器执行JavaScript简介
浏览器内部主要包含两部分:渲染引擎和JS引擎。
- 渲染引擎:负责解析HTML与CSS,俗称内核,例如Chrome浏览器的Blink或旧版WebKit。
- JS引擎:也称为JS解释器,负责读取网页中的JavaScript代码,处理后运行,例如Chrome浏览器的V8引擎。
注意:浏览器本身并不直接执行JS代码,而是通过内置的JavaScript引擎(解释器)来执行。JS引擎在运行时会逐行解释每一句源码(将其转换为机器语言),再由计算机执行,因此JavaScript被归类为脚本语言,采用逐行解释执行的方式。

JavaScript的组成

ECMAScript
ECMAScript是由ECMA国际(原欧洲计算机制造商协会)标准化的一门编程语言,在万维网上应用广泛。它常被称为JavaScript或JScript,但实际上后两者是ECMAScript语言的实现和扩展。

注:ECMAScript规定了JS的编程语法和基础核心知识,这是所有浏览器厂商共同遵守的一套JS语法工业标准。
- DOM——文档对象模型
文档对象模型(Document Object Model,简称DOM)是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过DOM提供的接口,可以对页面上的各种元素进行操作(如调整大小、位置、颜色等)。
- BOM——浏览器对象模型
BOM(Browser Object Model,简称BOM)是指浏览器对象模型,它提供了独立于内容的、可与浏览器窗口进行互动的对象结构。通过BOM可以操作浏览器窗口,例如弹出对话框、控制浏览器跳转、获取屏幕分辨率等。
JavaScript初体验
JS有三种书写方式,分别为行内式、内嵌式和外部引用。
行内式
- 可以将单行或少量JS代码写在HTML标签的事件属性中(以on开头的属性),例如onclick。
- 注意单双引号的使用:在HTML中推荐使用双引号,而在JS中推荐使用单引号。
- 这种方式可读性较差,当在HTML中编写大量JS代码时,不利于阅读。
- 引号容易出错,特别是在多层嵌套匹配时,非常容易混淆。
- 仅在特殊情况下使用。
可以写在以下三种标签里:
<button onclick="alert('这个小可爱真帅!')">我是button</button>
<input type="button" value="我是input" onclick="alert('这个小可爱真帅!')">
<a href="javascript:alert('这个小可爱真帅!')" rel="external nofollow" >我是a标签</a>


内嵌JS
- 可以将多行JS代码写在<script>标签中。
- 内嵌JS是学习阶段常用的方式。
<script>
alert('我喜欢支持我的哥哥姐姐们!')
</script>

外部JS文件
- 有利于HTML页面代码结构化,将大段JS代码独立到HTML页面之外,既美观,也方便文件级别的复用。
- 引用外部JS文件的script标签中间不可以写代码。
- 适合JS代码量比较大的情况。
<script src="1.js"></script>


结语
以上就是初识JavaScript的详细内容,更多关于初识JavaScript的资料请关注本站其它相关文章!