JavaScript 数据类型
JavaScript 有 8 种数据类型
字符串
数字
大整数
布尔值
未定义
空
符号
对象
对象数据类型
对象数据类型可以包含 内置对象 和 用户定义对象
内置对象类型可以是
对象、数组、日期、地图、集合、整数数组、浮点数数组、promise 等等。
示例
// 数字
let length = 16;
let weight = 7.5;
// 字符串
let color = "Yellow";
let lastName = "Johnson";
// 布尔值
let x = true;
let y = false;
// 对象
const person = {firstName:"John", lastName:"Doe"};
// 数组对象
const cars = ["Saab", "Volvo", "BMW"];
// 日期对象
const date = new Date("2022-03-25");
注意
JavaScript 变量可以保存任何类型的数据。
数据类型的概念
在编程中,数据类型是一个重要的概念。
为了能够对变量进行操作,了解其类型非常重要。
没有数据类型,计算机就无法安全地解决这个问题
let x = 16 + "Volvo";
将“Volvo”加到十六上有什么意义吗?会产生错误还是会产生结果?
JavaScript 将以上示例视为
let x = "16" + "Volvo";
注意
当添加数字和字符串时,JavaScript 将数字视为字符串。
JavaScript 从左到右评估表达式。不同的顺序会产生不同的结果
在第一个示例中,JavaScript 将 16 和 4 视为数字,直到它到达“Volvo”。
在第二个示例中,由于第一个操作数是字符串,所以所有操作数都被视为字符串。
JavaScript 类型是动态的
JavaScript 具有动态类型。这意味着同一个变量可以用来保存不同的数据类型
JavaScript 字符串
字符串(或文本字符串)是一系列字符,例如 "John Doe"。
字符串是用引号括起来的。您可以使用单引号或双引号
您可以在字符串中使用引号,只要它们与包围字符串的引号不匹配
示例
// 单引号在双引号中
let answer1 = "It's alright";
// 单引号在双引号中
let answer2 = "He is called 'Johnny'";
// 双引号在单引号中
let answer3 = 'He is called "Johnny"';
自己尝试 »您将在本教程的后面学习更多关于 字符串 的知识。
JavaScript 数字
所有 JavaScript 数字都以十进制数(浮点数)的形式存储。
数字可以写成带小数点或不带小数点
指数表示法
超大或超小的数字可以用科学(指数)表示法来写
注意
大多数编程语言都有许多数字类型
整数(整数)
byte (8 位), short (16 位), int (32 位), long (64 位)
实数(浮点数)
float (32 位), double (64 位)。
Javascript 数字始终是一种类型
double (64 位浮点数)。
您将在本教程的后面学习更多关于 数字 的知识。
JavaScript BigInt
所有 JavaScript 数字都以 64 位浮点数格式存储。
JavaScript BigInt 是一种新的数据类型 (ES2020),可用于存储超出普通 JavaScript Number 表示范围的整数值。
您将在本教程的后面学习更多关于 BigInt 的知识。
JavaScript 布尔值
布尔值只能有两个值:true
或 false
。
布尔值通常用于条件测试。
您将在本教程的后面学习更多关于 布尔值 的知识。
JavaScript 数组
JavaScript 数组用方括号写成。
数组项用逗号分隔。
以下代码声明(创建)一个名为 cars
的数组,其中包含三个项目(汽车名称)
数组索引从零开始,这意味着第一个项目是 [0],第二个是 [1],依此类推。
您将在本教程的后面学习更多关于 数组 的知识。
JavaScript 对象
JavaScript 对象用花括号 {}
写成。
对象属性以 name:value 对的形式写成,用逗号分隔。
上面的示例中的对象 (person) 有 4 个属性:firstName、lastName、age 和 eyeColor。
您将在本教程的后面学习更多关于 对象 的知识。
typeof 运算符
您可以使用 JavaScript typeof
运算符来查找 JavaScript 变量的类型。
typeof
运算符返回变量或表达式的类型
示例
typeof 0 // 返回 "number"
typeof 314 // 返回 "number"
typeof 3.14 // 返回 "number"
typeof (3) // 返回 "number"
typeof (3 + 4) // 返回 "number"
自己尝试 »
您将在本教程的后面学习更多关于 typeof 的知识。
未定义
在 JavaScript 中,没有值的变量的值为 undefined
。类型也是 undefined
。
任何变量都可以通过将值设置为 undefined
来清空。类型也将是 undefined
。
空值
空值与 undefined
无关。
空字符串既有合法值,也有类型。