Javascript typescript中的变量类型

Javascript typescript中的变量类型,javascript,typescript,Javascript,Typescript,当我们声明一个类型为number的变量时,我们不能为该变量分配字符串。我的问题是,当我们将一个对象分配给number类型的变量时,为什么typescript会显示错误 我的问题是,当我们将一个对象分配给number类型的变量时,为什么typescript会显示错误 代码示例: const foo: number = {}; // Error : Type {} is not assignable to `number` 理由 因为{}没有一个数字上存在的所有方法,例如toPrecision 就

当我们声明一个类型为number的变量时,我们不能为该变量分配字符串。我的问题是,当我们将一个对象分配给number类型的变量时,为什么typescript会显示错误

我的问题是,当我们将一个对象分配给number类型的变量时,为什么typescript会显示错误

代码示例:

const foo: number = {}; // Error : Type {} is not assignable to `number`
理由
因为
{}
没有一个数字上存在的所有方法,例如
toPrecision

就像字符串不是数字一样,对象也不是数字。你不能将一个对象分配给一个数字。为什么你期望它不会显示错误?@Alan这是一个打字错误。我的问题是,当我们将对象分配给类型为的变量时,为什么不显示错误number@jonrsharpe它的打字错误。我的问题是,当我们将对象分配给类型为的变量时,为什么不显示错误number@user3595398你能举个例子吗?