浅谈JavaScript中运算符+=以及-=遇到的问题。本来其实我觉得我对这个运算符之类的应该是没有什么问题的,但是没想到做题的时候发现还是有问题的,问题就出在了运算符+=以及-=。
具体题目:JavaScript运算符+=和-=
这道题首先答案是D,但是其实打眼一看的话,感觉CD其实是一样的,但是由于这是一道单选题,所以只能选一个。。我当时其实是以为题出错了,没想到仔细了解发现C确实是有问题的。
首先大家都知道+-都是运算符,但是他们还是有区别的,不仅仅是一个是加一个是减。+号运算符除了两个数相加以外,还能做到两个字符串相连,或者别的数据类型和字符串相连。
比如说1+“a”会编程1a,而-号运算符呢?则会编程NaN。所以+=其实正确的写法应该是表示相加或相连并赋值。这样就对了,可以说这道题其实出的不太严谨,也可以说就是故意的。

不过我猜这道题如果AB中改对一个然后改成多选,可能大多数人都会直接选A/B然后跟上CD。。
简单说一下我当时的思路,既然JavaScript运算符的题,那么我首先就是去百度查询了一下JavaScript运算符,发现其实应该是没啥问题的啊,然后去52发帖子问了一下,大佬还是很快就给了解答。
其实问题就是出在了+号不光可以相加还可以相连。我当时是通过f12在console测试的,然后首先定义一个a=1,之后再测试a+=1,结果为2,然后测试a-=“a”发现结果为NaN,之后再测试a+=“a”发现结果为NaNa。
JavaScript运算符+=和-=
所以其实当+号运算符两边为数字的话,那么结果就为数字,但是如果有一方为字符串,那么+号运算符则会变成连接符。但是假如我一边是数字,一边是字符串,但是字符串的内容为数字呢?哈哈,结果其实还是字符串相连,并没有出现想象中的相加。
JavaScript运算符+=和-=
总结一下,如果+号的左右都为数字,那么结果为相加,但是如果有一方为字符串的话,就会变成字符串的相连。
有什么疑问的话,可以在评论区留言,我会在看到的第一时间进行回复的。

最后修改:2021 年 04 月 19 日 09 : 07 PM
如果觉得我的文章对你有用,请随意赞赏