红宝书第一讲:JavaScript 语法与数据类型详解
资料取自《JavaScript高级程序设计(第5版)》。
查看所有教程:红宝书学习大纲
一、基本数据类型(原始类型)
JavaScript 的原始类型是最基础的数据单元,不可再拆分:
数字(Number)
字符串(String)
- 用单引号
'
、双引号"
或反引号`
包裹 支持模板字符串(嵌入变量
${x}
):const name = "小明"; const greeting = `你好,${name}!`; // 模板字符串
- 用单引号
布尔值(Boolean)
- 只有两种值:
true
(真)和false
(假) 例子:
const isLogged = true; const isAvailable = 10 > 5; // true(比较运算结果)
- 只有两种值:
空值(null 与 undefined)
null
:表示有意为空undefined
:变量未初始化时默认值let data = null; // 明确赋空值 let address; // undefined(未赋值)
符号(Symbol,ES6 新增)
用于创建唯一的标识符(不可重复):
const id1 = Symbol("id"); const id2 = Symbol("id"); console.log(id1 === id2); // false(永远不同)
大整数(BigInt,ES11 新增)
处理超大整数,后缀加
n
:const bigNumber = 123456789012345678901234567890n;
二、对象类型(复杂类型)
对象类型可以包含多个值或功能:
普通对象(Object)
用花括号
{}
定义键值对:const user = { name: "小明", age: 18 };
数组(Array)
存储有序数据,用
[]
定义:const fruits = ["苹果", "香蕉", "橘子"];
日期(Date)
处理时间:
const today = new Date(); // 当前时间
正则表达式(RegExp)
用于匹配文本规则,用
/.../
定义:const emailPattern = /^\w+@\w+\.\w+$/; // 验证邮箱
三、自动类型转换(隐式转换)
JavaScript 会自动转换类型:
原类型 → 目标类型 | 转换规则 | 示例 |
---|---|---|
Number → String | 数字转字符串 | String(123) → "123" |
String → Number | 纯数字字符串转数字,否则转 NaN | Number("100") → 100 |
Boolean → Number | true → 1,false → 0 | Number(true) → 1 |
Object → String | 转成 [object Object] (默认) | String({}) → "[object Object]" |
四、手动类型转换(显式转换)
开发中常用强制转换:
const num = parseInt("100"); // 字符串转整数 → 100
const bool = Boolean("hello"); // 字符串转布尔 → true
目录:总目录
上篇文章:《JavaScript高级程序设计(第5版)》学习大纲
下篇文章:第二讲:JavaScript变量声明:var、let、const详解
- 字符串、数值、布尔值与类型转换规则,《JavaScript高级程序设计(第5版)》 第三章 ↩
- 基本引用类型(Date、RegExp、原始包装类型)的定义与用法,《JavaScript高级程序设计(第5版)》 第五章 ↩
- 数组类型与操作方法,《JavaScript高级程序设计(第5版)》 第六章 ↩
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。