什么是 TypeScript 变量的 declared type

265 阅读1分钟

看下面这段代码:

let x = Math.random() < 0.5 ? 10 : "hello world!";
   
x = 1;

console.log(x);
           
x = "goodbye!";

console.log(x);
          

没有语法错误:

请注意,这些分配中的每一个都是有效的。 即使在我们第一次赋值后观察到的 x 类型变成了数字,我们仍然能够为 x 分配一个字符串。 这是因为 x 的声明类型(declared type) - x 开头的类型 - 是 string | number,并且始终根据声明的类型(declared type)检查可分配性。