为什么"字符串" - "字符串"NaN?

sup*_*r11 4 javascript typeof nan

这对我来说就像一个无限循环.

var sM = "Hello" - "World";
console.log(sM) && console.log(typeof sM);
Run Code Online (Sandbox Code Playgroud)

我理解为什么字符串 - 字符串输出NaN,但后来"Hello" - "World" typeof是一个number.

这意味着用另一个字符串减去字符串会给你一个类型number.

那逻辑在哪里?

Que*_*tin 8

为什么字符串 - 字符串输出NaN

因为减法只处理数字,所以它将两边都转换为数字并获得非数字.

但接着"你好" - "世界"类型是一个数字.

NaN的类型为Number.这是计算的标准.