参考资料:https://zh.javascript.info/
如何引入JS
- 我们可以使用一个
<script>
标签将 JavaScript 代码添加到页面中。 type
和language
特性(attribute)不是必需的。- 外部的脚本可以通过
<script src="path/to/script.js"></script>
的方式插入。
JS中的分号与注释
- 大多数时候可以省略分号,但是不建议新手省略。
- 注释分为
// 注释
(单行)和/*...*/
(多行)。
开启严格模式
- ES5 规范增加了新的语言特性并且修改了一些已经存在的特性。为了保证旧的功能能够使用,大部分的修改是默认不生效的。需要用
"use strict"
来明确地激活这些特性。 "use strict"
必须要写在脚本文件头部,否则不会生效。- 当打上了
"use strict"
就进入了严格模式,没有办法中途退出现代模式。 - 现代 JavaScript 支持
“classes”
和“modules”
—— 高级语言结构,它们会自动启用"use strict"
。因此,如果我们使用它们,则无需添加"use strict"
指令。
变量声明
- 可以用
let
声明变量 - 可以在一行中声明多个变量,但为了更好的可读性,建议一行只声明一个变量。
- JS中变量名区分大小写。
- 命名规范
- 变量名称必须仅包含字母,数字,符号 $ 和 _。
- 首字符必须非数字。
- 声明两次会触发 error。
- 保留字无法用作变量命名。
- 未启用严格模式时,可以通过赋值来创建变量。而当启用严格模式后,必须先声明变量。
- 可以用
const
来声明常量,声明后值无法被变更。 - 额外声明一个变量是利大于弊的,多新建少重用。
数据类型
- JavaScript是一种“动态类型”的编程语言,在你定义一个变量后,该变量会根据赋值类型变更数据类型。
Number
类型,包含特殊数值:Infinity
、-Infinity
和NaN
。BigInt
类型,长数字字段,用于Number
类型范围囊括不到,例如用于加密或微秒精度的时间戳。存在兼容性问题,目前Firefox/Chrome/Edge/Safari
已经支持BigInt
了,但IE
还没有。String
类型- 双引号
- 单引号
- 反引号,
功能扩展
引号。它们允许我们通过将变量和表达式包装在 ${…} 中,来将它们嵌入到字符串中。
let name = "John";
// 嵌入一个变量
alert( `Hello, ${name}!` ); // Hello, John!
// 嵌入一个表达式
alert( `the result is ${1 + 2}` ); // the result is 3
- JS中没有
Char
类型 Boolean
类型(逻辑类型)“null”
值,代表“无”、“空”或“值未知”的特殊值。“undefined”
值,含义是 未被赋值。object
类型,用于储存数据集合和更复杂的实体。symbol
类型,用于创建对象的唯一标识符。typeof
运算符,返回参数的类型。typeof null
会返回"object"
—— 这是 JavaScript 编程语言的一个错误,实际上它并不是一个object
。
持续更新中…