1.String和string(基础类型)

# 1.String和string(基础类型)

看:

const s1: String = "hello"; // 正确
const s2: String = new String("hello"); // 正确

const s3: string = "hello"; // 正确
const s4: string = new String("hello"); // 报错
1
2
3
4
5

类似的还有:

  • Boolean 和 boolean
  • String 和 string
  • Number 和 number
  • BigInt 和 bigint
  • Symbol 和 symbol

建议只使用小写类型,不使用大写类型。因为绝大部分使用原始类型的场合,都是使用字面量,不使用包装对象。而且,TypeScript 把很多内置方法的参数,定义成小写类型,使用大写类型会报错。

# Object类型

TypeScript 的对象类型也有大写Object和小写object两种。

# 大Object

大写的Object类型代表 JavaScript 语言里面的广义对象。所有可以转成对象的值,都是Object类型,这囊括了几乎所有的值。

事实上,除了undefined和null这两个值不能转为对象,其他任何值都可以赋值给Object类型。

不建议使用,因为不符合直觉

let obj: Object;

obj = true;
obj = "hi";
obj = 1;
obj = { foo: 123 };
obj = [1, 2];
obj = (a: number) => a + 1;
1
2
3
4
5
6
7
8

# 小Object

小写的object类型代表 JavaScript 里面的狭义对象,即可以用字面量表示的对象,只包含对象、数组和函数,不包括原始类型的值。

Last Updated: 9/25/2026, 2:08:32 PM