什么是JavaScript

JavaScript是一种脚本语言,用于为网页添加交互性和动态功能。它是一种解释型语言,不需要编译,直接在浏览器中运行。

高层定义

JavaScript 是一种脚本编程语言,它可以在网页上实现复杂的功能,网页展现给你的不再是简单的静态信息,而是实时的内容更新——交互式的地图、2D/3D 动画、滚动播放的视频等等——JavaScript 就在其中。它是标准 Web 技术蛋糕的第三层。

HTML 是一种标记语言,用来结构化我们的网页内容并赋予内容含义,例如定义段落、标题和数据表,或在页面中嵌入图片和视频。

CSS 是一种样式规则语言,可将样式应用于 HTML 内容,例如设置背景颜色和字体,在多个列中布局内容。

它到底可以做什么?

客户端 JavaScript 语言的核心包含一些普遍的编程特性,以让你可以做到如下的事情:

在变量中储存有用的值。比如上文的示例中,我们请求客户输入一个新名字,然后将其储存到 name 变量中。

操作一段文本(在编程中称为“字符串”(string))。上文的示例中,我们取字符串“玩家 1:”,然后把它和 name 变量拼接起来,创造出完整的文本标签,比如“玩家 1:小明”。

运行代码以响应网页中发生的特定事件。上文的示例中,我们用一个 click 事件来检测按钮什么时候被点击,然后运行代码更新文本标签。

以及更多!

JavaScript 语言核心之上所构建的功能更令人兴奋。应用程序接口(Application Programming Interface,API)将为你的代码提供额外的超能力。

API 是已经建立好的一套代码组件,可以让开发者实现原本很难甚至无法实现的程序。就像现成的家具套件之于家居建设,用一些已经切好的木板组装一个书柜,显然比自己设计,寻找合适的木材,裁切至合适的尺寸和形状,找到正确尺寸的螺钉,然后再组装成书柜要简单得多。

JavaScript 输出

JavaScript 可以通过不同的方式来输出数据:

使用 window.alert() 弹出警告框。

使用 document.write() 方法将内容写到 HTML 文档中。

使用 innerHTML 写入到 HTML 元素。

使用 console.log() 写入到浏览器的控制台。

操作 HTML 元素

如需从 JavaScript 访问某个 HTML 元素,可以使用 document.getElementById(id) 方法。

<!DOCTYPE html><html>
<body>

<h1>我的第一个 Web 页面</h1>

	<p id="demo">我的第一个段落</p>

<script>
	document.getElementById("demo").innerHTML = "段落已修改。";
</script>

</body>
</html>

innerHTML = "段落已修改。" 修改了原本的段落内容。

JavaScript 语法

JavaScript 字面量

数字 字符串 布尔值 数组 对象 空值

JavaScript 变量

变量是用于存储信息的"容器"。

变量可以是字母、数字、下划线或美元符号开头。

变量不能以数字开头。

变量名对大小写敏感(y 和 Y 是不同的变量)。

JavaScript 操作符

JavaScript中有多种操作符类型:

算术运算符

  • + 加法
  • - 减法
  • * 乘法
  • / 除法
  • % 取余
  • ++ 递增
  • -- 递减
  • ** 幂运算

赋值运算符

  • = 简单赋值
  • += 加赋值
  • -= 减赋值
  • *= 乘赋值
  • /= 除赋值
  • %= 取余赋值

比较运算符

  • == 等于
  • === 严格等于(值和类型都相等)
  • != 不等于
  • !== 严格不等于
  • > 大于
  • < 小于
  • >= 大于等于
  • <= 小于等于

逻辑运算符

  • && 逻辑与
  • || 逻辑或
  • ! 逻辑非

位运算符

  • & 按位与
  • | 按位或
  • ^ 按位异或
  • ~ 按位非
  • << 左移
  • >> 右移
  • >>> 无符号右移

三元运算符

  • 条件 ? 值1 : 值2 如果条件为真返回值1,否则返回值2

JavaScript 关键字

JavaScript 关键字是语言中预定义的、具有特殊含义的单词。以下是一些常用的关键字:

声明关键字

  • var - 声明变量(函数作用域)
  • let - 声明块级作用域变量
  • const - 声明常量
  • function - 声明函数
  • class - 声明类

条件和循环关键字

  • if - 条件语句
  • else - else条件
  • switch - 多条件分支
  • case - switch的条件分支
  • for - 循环语句
  • while - while循环
  • do - do-while循环
  • break - 跳出循环
  • continue - 继续下一次循环

异常处理关键字

  • try - 尝试执行代码块
  • catch - 捕获异常
  • throw - 抛出异常
  • finally - 最终执行的代码块

其他重要关键字

  • return - 函数返回值
  • this - 当前对象引用
  • new - 创建对象实例
  • delete - 删除对象属性
  • typeof - 检查数据类型
  • instanceof - 检查对象类型
  • void - 指定表达式返回undefined

注意:这些关键字不能用作变量名、函数名或其他标识符名称。

JavaScript 字母大小写

JavaScript 对大小写敏感。

所有 JavaScript 标识符对大小写敏感。

let x = 10;
let X = 20;
console.log(x); // 输出 10
console.log(X); // 输出 20

在上面的代码中,xX 是不同的变量。

函数 getElementById 与 getElementbyID 是不同的。

同样,变量 myVariable 与 MyVariable 也是不同的

JavaScript 字符集

JavaScript 字符集是指用于表示字符的编码系统。在 JavaScript 中,字符集使用 Unicode 编码。

Unicode 是一种国际标准字符编码,它为世界上几乎所有的字符提供了唯一的数字编码。每个字符都有一个对应的 Unicode 码点,例如字母 A 的 Unicode 码点是 65,字母 a 的 Unicode 码点是 97。

JavaScript 中的字符串是由 Unicode 字符组成的序列。你可以使用 Unicode 码点来表示字符,也可以使用字符本身来表示。

例如,你可以使用 \u0041 来表示字母 A,也可以直接使用 A 来表示字母 A。

console.log('\u0041'); // 输出 A
console.log('A'); // 输出 A