Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/419.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript+;操作员vs-操作员_Javascript - Fatal编程技术网

Javascript+;操作员vs-操作员

Javascript+;操作员vs-操作员,javascript,Javascript,我对此感到困惑: ​我知道n1是1。这是因为减号运算符会将字符串“4”转换为数字,然后从5中减去它。 但为什么在+运算符的情况下得到54 有人能给我解释一下+和=运算符之间的区别吗?-运算符只有一个含义-数字减法(或否定,在这种情况下,还可以转换为数字)。但是,在使用+运算符的情况下,有两种:数字加法和字符串串联。当+运算符的一个操作数是字符串时,它将执行字符串串联而不是数字相加 但是,整个过程要比这复杂一点,并且涉及一个算法,例如,您可以学习更多。-运算符只有一个含义-数字减法(或否定,在这种

我对此感到困惑:

​我知道n1是1。这是因为减号运算符会将字符串“4”转换为数字,然后从5中减去它。 但为什么在+运算符的情况下得到54


有人能给我解释一下+和=运算符之间的区别吗?

-
运算符只有一个含义-数字减法(或否定,在这种情况下,还可以转换为数字)。但是,在使用
+
运算符的情况下,有两种:数字加法和字符串串联。当
+
运算符的一个操作数是字符串时,它将执行字符串串联而不是数字相加


但是,整个过程要比这复杂一点,并且涉及一个算法,例如,您可以学习更多。

-
运算符只有一个含义-数字减法(或否定,在这种情况下,还可以转换为数字)。但是,在使用
+
运算符的情况下,有两种:数字加法和字符串串联。当
+
运算符的一个操作数是字符串时,它将执行字符串串联而不是数字相加


但是,整个过程要比这复杂一些,并且涉及到一个算法,例如,您可以学习更多。

这是因为在
n2
中,
+
被视为串联,而不是加法。所以
5
被转换成字符串
“5”
“4”
被串联,得到“54”。

这是因为在
n2
中,
+
被视为串联,而不是加法。因此,将
5
转换为字符串
“5”
,并将
“4”
连接起来,得到“54”。

通过类型转换,任何包含字符串的
+
表达式都将生成字符串。因此,在执行串联之前,所有操作数(在本例中为
5
)都将转换为字符串


另一方面,
-
只是一个算术操作数,因此
“4”
被转换成一个整数,并且按照您的预期执行计算。

通过类型转换,任何包含字符串的
+
表达式都将生成字符串。因此,在执行串联之前,所有操作数(在本例中为
5
)都将转换为字符串


另一方面,
-
只是一个算术操作数,因此,
“4”
被转换为一个整数,并按预期执行计算。
+
运算符也是一个字符串运算符。javascript中的每个基本类型变量都可以在其字符串表示中进行解释。你只是把5分到4分,得到54分


-
运算符不是字符串运算符,因此编译器尝试将“4”解释为一个数字,从而得到1

+
运算符也是字符串运算符。javascript中的每个基本类型变量都可以在其字符串表示中进行解释。你只是把5分到4分,得到54分


-
运算符不是字符串运算符,因此编译器尝试将“4”解释为一个数字,从而得到1

+
的任一侧有字符串时,
+
将被视为字符串连接运算符,另一侧将转换为字符串,然后进行连接


注意类似于
1+2+'3'
,结果是
'33'
而不是
'123'

+
的任一侧有一个字符串时,
+
将被视为字符串连接运算符,另一侧将被转换为字符串,然后进行连接


注意类似于
1+2+'3'
,结果是
'33'
,而不是
'123'

Javascript将5作为数字,“4”作为字符串。 javascript+操作符用于表示两件事。 如果要添加,请使用parseInt

var n1 = 5-"4";
var n2 = parseInt(5)+parseInt("4");

alert(n1);
alert(n2);

Javascript将5作为数字,“4”作为字符串。 javascript+操作符用于表示两件事。 如果要添加,请使用parseInt

var n1 = 5-"4";
var n2 = parseInt(5)+parseInt("4");

alert(n1);
alert(n2);

可能重复的可能重复的感谢分享对象转换url。感谢分享对象转换url。谢谢大家。后来我看了说明书,上面写着同样的话:谢谢你们。我后来查看了规范,它说了同样的事情: