[英]Subtracting two strings in Javascript and type coercion
为什么Javascript会为-运算符而不是+键入强制类型?
str = "2" console.log(str+str) console.log(typeof(str+str)) console.log(str-str) console.log(typeof(str-str))
因为只有数据类型,这-
是有道理的数量。 +
运算符对字符串和数字操作数具有含义。
在JavaScript中,通常情况下,像x + y
这样的表达式必须推迟到运行时才能弄清楚它的含义。 这就是类型转换规则的来源。对于-
,它知道操作数必须是数字,因此在运行时要做的工作较少。
-
运算符仅用于数字减法
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.