TypeScript 两位数字加法 returns 字符串连接

TypeScript two digits addition returns a string concatenation

const x = 1;
const y = ('3' as unknown) as number;

let add = (num1: number, num2: number)=> {
    return num1 + num2;
}

console.log(add(x, y));

// 打印 13

应该在哪里打印 4 因为“const y”被转换为“number”类型

const y = ('3' as unknown) as number; 没有将字符串转换为数字。您只是在此处进行类型断言。

那么,JS 在做什么:1 + '3' = 13

您需要执行类似 Number('3') 的操作才能解决该问题。但要小心,Number() 可以 return NaN.