运算符“+”不能应用于类型“Number”和“Number” 是什么意思

来源:4-6 函数泛型

Yi罐可乐

2021-05-27

function join(first: Number, second: Number): Number {
  return first + second; // 运算符“+”不能应用于类型“Number”和“Number”。
}

join(1, 1)

为什么 ts 提示错误

写回答

2回答

陈枫William

2021-06-10

Number 是一个 Interface, number 才是表示类型,你换成小写就可以了。看下面的示例代码你就明白了:


/**

 * 小写 number

 */

function add(a: number, b: number): number {

  return a + b

}

console.log(add(1, 2)) // 3


/**

 * 大写的 Number

 */

function minus(m: Number, n: Number): Number {

  return new Number(m.valueOf() - n.valueOf())

}

const m = new Number(2)

const n = new Number(1)

console.log(minus(m, n)) // [Number: 1]



0
0

Dell

2021-05-29

完整代码贴一下,看起来不应该啊,升级下TS的版本呢

0
0

专为小白设计的TypeScript入门课

Dell老师专为TypeScript小白打造的,全栈式教学TS入门课程

2249 学习 · 506 问题

查看课程