返回

TypeScript基础篇(二):探索TS中的原始类型

前端

TypeScript 中的原始类型包括布尔值、数值、字符串、undefined、null 以及 object 和 symbol。与 JavaScript 相同,这些类型是语言的基本构建块,用于表示各种数据。

数值类型

TypeScript 中的所有数字都是浮点数,其类型为 number,支持十进制、二进制、八进制和十六进制。

十进制

十进制是我们在日常生活中最常用的数字系统。它使用 0 到 9 这 10 个数字来表示所有数字。在 TypeScript 中,十进制数字可以是整数或小数。例如:

let age = 30; // 整数
let pi = 3.14; // 小数

二进制

二进制是计算机内部使用的数字系统。它只使用 0 和 1 这两个数字来表示所有数字。在 TypeScript 中,二进制数字必须以 0b 或 0B 前缀开头。例如:

let binaryNumber = 0b11111010; // 二进制数字

八进制

八进制是使用 0 到 7 这 8 个数字来表示所有数字的数字系统。在 TypeScript 中,八进制数字必须以 0o 或 0O 前缀开头。例如:

let octalNumber = 0o777; // 八进制数字

十六进制

十六进制是使用 0 到 9 和 A 到 F 这 16 个字符来表示所有数字的数字系统。在 TypeScript 中,十六进制数字必须以 0x 或 0X 前缀开头。例如:

let hexadecimalNumber = 0xFF; // 十六进制数字

NaN 和 Infinity

number 类型变量还可以被赋值 NaN 和 Infinity。NaN 表示“非数字”,而 Infinity 表示“无穷大”。例如:

let nanValue = NaN;
let infinityValue = Infinity;

字符串类型

字符串类型用于表示文本数据。在 TypeScript 中,字符串必须用单引号或双引号括起来。例如:

let name = 'John Doe';
let message = "Hello, world!";

字符串类型支持各种字符串操作,包括连接、分割、查找、替换等。例如:

let firstName = 'John';
let lastName = 'Doe';
let fullName = firstName + ' ' + lastName; // John Doe

let message = "Hello, world!";
let index = message.indexOf('world'); // 7

let newMessage = message.replace('world', 'everyone'); // Hello, everyone!

布尔值类型

布尔值类型用于表示真假值。在 TypeScript 中,布尔值只有两个值:true 和 false。例如:

let isLoggedIn = true;
let isNight = false;

布尔值类型常用于条件判断和循环控制。例如:

if (isLoggedIn) {
  // 执行某些操作
}

while (isNight) {
  // 执行某些操作
}

undefined 和 null 类型

undefined 和 null 是两个特殊的值,分别表示变量未定义和变量的值为 null。例如:

let age; // undefined
let person = null; // null

undefined 和 null 值经常用于初始化变量或表示变量没有值。例如:

let age; // undefined

if (age === undefined) {
  // 执行某些操作
}

let person = null; // null

if (person === null) {
  // 执行某些操作
}

object 类型

object 类型用于表示对象。在 TypeScript 中,对象是一种复合数据类型,可以包含各种属性和方法。例如:

let person = {
  name: 'John Doe',
  age: 30,
  gender: 'male'
};

object 类型可以用于存储和操作复杂数据。例如:

let person = {
  name: 'John Doe',
  age: 30,
  gender: 'male'
};

console.log(person.name); // John Doe
person.age++; // 31
person['gender'] = 'female'; // female

symbol 类型

symbol 类型是 TypeScript 中的一种特殊类型,用于表示唯一标识符。symbol 值是不可变的,并且可以在对象中作为属性名使用。例如:

let uniqueId = Symbol('unique id');

let person = {
  [uniqueId]: 'John Doe'
};

console.log(person[uniqueId]); // John Doe

symbol 类型常用于创建私有属性或防止属性名冲突。例如:

// 创建私有属性
let privateProperty = Symbol('private property');

class Person {
  constructor(name) {
    this[privateProperty] = name;
  }

  getName() {
    return this[privateProperty];
  }
}

let person = new Person('John Doe');

console.log(person.getName()); // John Doe
console.log(person[privateProperty]); // undefined

总结

TypeScript 中的原始类型包括布尔值、数值、字符串、undefined、null、object 和 symbol。这些类型是语言的基本构建块,用于表示各种数据。了解这些基本数据类型在 TypeScript 中的表现形式、使用场景和注意事项,对于掌握 TypeScript 编程至关重要。