它将打印控制台.log(1+ + “2”)

what it will print console.log(1+ + "2")

本文关键字:打印 控制台 log      更新时间:2023-10-21

为什么这个JavaScript语句:

console.log(1 +  + "2");

打印

3

作为输出?我不确定它为什么要打印这个 - 我期望"12"。

字符串

前面的+-操作数将其转换为数字。 所以这里+"2"会变得2因此结果将是3.

=> 1 + + "2"    // +"2" = 2
=> 1 +    2
=> 3

如果您在两者之间使用-,例如

=> 1 - - "2"   // -"2" = -2
=> 1 - - 2     // 1 - (-2)
=> 1 + 2
=> 3

所以

     -"2" ==> -2
     +"2" ==>  2
 +"Hello" ==> NaN
 -"Hello" ==> NaN

console.log(1 + "2")打印 12 作为+充当连接运算符。

但是,如果您尝试打印console.log( + "2" ),您将获得 2 coz 的输出,它被转换为整数。

因此,console.log( 1 + +"2" ) 会给你的结果为 3

关于

console.log(1 +  + "2");

在浏览器控制台上运行它。更好的问题是为什么它会输出它所做的事情——

console.log(1 +  + "2");
              ^

这是二进制+运算符,它将连接字符串或添加数字。

console.log(1 +  + "2");
                 ^

那个是一元+运算符,它将"2"转换为数字。

不要像这样创建 JavaScript。这令人困惑。

console.log(1 + "2"(;这将给出确认的输出 12