1 回答
TA贡献1844条经验 获得超8个赞
该-操作员试图与其周围的表达式强制为数字。[5],当转换为原始类型(通过 连接所有元素,)时,计算结果为'5',可以清楚地转换为数字而不会出现问题。
请参阅规范:
AdditiveExpression : AdditiveExpression - MultiplicativeExpression
让 lref 是对 AdditiveExpression 求值的结果。
令 lval 为 GetValue(lref)。
ReturnIfAbrupt(lval)。
让 rref 是 MultiplicativeExpression 的计算结果。
令 rval 为 GetValue(rref)。
ReturnIfAbrupt(rval)。
令 lnum 为 ToNumber(lval)。
ReturnIfAbrupt(lnum)。
令 rnum 为 ToNumber(rval)。
ReturnIfAbrupt(rnum)。
返回对 lnum 和 rnum 应用减法运算的结果。请参阅下面的注释 12.7.5。
凡ToNumber 确实,在一个对象的情况下:
令 primValue 为 ToPrimitive(argument, hint Number)。
返回 ToNumber(primValue)。
这导致ToPrimitive,调用toString数组,这导致Array.prototype.toString,它调用.join.
添加回答
举报
