前端必知必会-JavaScript 数据类型


JavaScript 数据类型

JavaScript 有 8 种数据类型

  • 字符串
  • 数字
  • Bigint
  • 布尔值
  • 未定义Undefined
  • 空值
  • 符号Symbol
  • 对象

对象数据类型

对象数据类型可以包含内置对象和用户定义对象:

内置对象类型可以是:

对象、数组、日期、映射、集合、整数数组、浮点数组、承诺promises等。

示例

// 数字:
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"];

// Date 对象:
const date = new Date("2022-03-25");

注意
JavaScript 变量可以保存任何类型的数据。

数据类型的概念

在编程中,数据类型是一个重要的概念。

为了能够对变量进行操作,了解一些类型很重要。

如果没有数据类型,计算机就无法安全地解决这个问题:

let x = 16 + "Volvo";

将“Volvo”加到十六有意义吗? 它会产生错误还是会产生结果?

JavaScript 会将上述示例视为:

let x = "16" + "Volvo";

注意
在添加数字和字符串时,JavaScript 会将数字视为字符串。

示例

let x = 16 + "Volvo";

示例

let x = "Volvo" + 16;

JavaScript 从左到右评估表达式。不同的序列会产生不同的结果:

JavaScript:

let x = 16 + 4 + "Volvo";

结果:

20Volvo
JavaScript:

let x = "Volvo" + 16 + 4;

结果:

Volvo164
在第一个示例中,JavaScript 将 16 和 4 视为数字,直到达到 “Volvo”。

在第二个示例中,由于第一个操作数是字符串,因此所有操作数都被视为字符串。

JavaScript 类型是动态的

JavaScript 具有动态类型。这意味着可以使用相同的变量来保存不同的数据类型:

示例

let x; // 现在 x 未定义
x = 5; // 现在 x 是数字
x = "John"; // 现在 x 是字符串

JavaScript 字符串

字符串(或文本字符串)是一系列字符,如“John Doe”。

字符串用引号括起来。您可以使用单引号或双引号:

示例

// 使用双引号:
let carName1 = "Volvo XC60";

// 使用单引号:
let carName2 = 'Volvo XC60';

您可以在字符串中使用引号,只要它们与字符串周围的引号不匹配即可:

示例

// 双引号内的单引号:
let answer1 = "It's alright";

// 双引号内的单引号:
let answer2 = "He is called 'Johnny'";

// 单引号内的双引号:
let answer3 = 'He is called "Johnny"';

JavaScript 数字

所有 JavaScript 数字都存储为十进制数(浮点数)。

数字可以带小数或不带小数:

示例

// 带小数:
let x1 = 34.00;

// 不带小数:
let x2 = 34;

指数表示法
超大或超小数可以用科学(指数)表示法表示:

示例

let y = 123e5; // 12300000
let z = 123e-5; // 0.00123

注意
大多数编程语言都有许多数字类型:

整数(整数):
byte(8 位)、short(16 位)、int(32 位)、long(64 位)

实数(浮点数):
float(32 位)、double(64 位)。

Javascript 数字始终是一种类型:
double(64 位浮点数)。

JavaScript BigInt

所有 JavaScript 数字都以 64 位浮点格式存储。

JavaScript BigInt 是一种新的数据类型 (ES2020),可用于存储太大而无法用普通 JavaScript 数字表示的整数值。

示例

let x = BigInt("123456789012345678901234567890");

JavaScript 布尔值

布尔值只能有两个值:true 或 false。

示例

let x = 5;
let y = 5;
let z = 6;
(x == y) // 返回 true
(x == z) // 返回 false

布尔值通常用于条件测试。

JavaScript 数组

JavaScript 数组用方括号书写。

数组项以逗号分隔。

以下代码声明(创建)一个名为 cars 的数组,其中包含三个项(汽车名称):

示例

const cars = ["Saab", "Volvo", "BMW"];

数组索引从零开始,这意味着第一个项为 [0],第二个项为 [1],依此类推。

JavaScript 对象

JavaScript 对象用花括号 {} 书写。

对象属性以名称:值对的形式书写,以逗号分隔。

示例

const person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};

上面示例中的对象(person)有 4 个属性:firstName、lastName、age 和 eyeColor。

typeof 运算符

您可以使用 JavaScript typeof 运算符来查找 JavaScript 变量的类型。

typeof 运算符返回变量或表达式的类型:

示例

typeof "" // 返回“string”
typeof“John” // 返回“string”
typeof “John Doe” // 返回“string”

示例

typeof 0 // 返回“number”
typeof 314 // 返回“number”
typeof 3.14 // 返回“number”
typeof (3) // 返回“number”
typeof (3 + 4) // 返回“number”

未定义Undefined

在 JavaScript 中,没有值的变量的值为未定义。类型也是未定义的。

示例

let car; // 值未定义,类型未定义

任何变量都可以通过将值设置为未定义来清空。类型也将未定义。

示例

car = undefined; // 值未定义,类型未定义

空值

空值与未定义无关。

空字符串​​既有合法值,也有类型。

示例

let car = ""; // 值为 "",typeof 为 "string"

总结

本文介绍了JavaScript 数据类型的使用,如有问题欢迎私信和评论

猜你喜欢

转载自blog.csdn.net/qq_24018193/article/details/143243065