"JavaScript""get Month()"其中前面加一些提示信息会发生异常

问题遇到的现象和发生背景

工具及版本:
Visual Studio Code January 2022 (version 1.64)

问题相关代码,请勿粘贴截图
```javascript
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        var d = new Date()
    //将当前时间转化为本地字符串打印    具体到日期
        console.log(d.toLocaleDateString())
    //将当前时间转化为本地字符串打印    具体到时分秒
        console.log(d.toLocaleString())
    //获取年份
        console.log("年份:"+d.getFullYear())
    //获取月份  getMonth()方法用0--11来表示1--12月,所以后面加1即可
        console.log("月份:"+d.getMonth()+1)
    //获取日            用getDate(),而不是getDay()
        console.log("日:"+d.getDate())
    //获取时
        console.log("时:"+d.getHours())
    //获取分
        console.log("分:"+d.getMinutes())
    //获取秒
        console.log("秒:"+d.getSeconds())
    //获取毫秒时    从1970年刚开始距今所过的毫秒时
        console.log(d.getTime())
    </script>

</body>
</html> 
###### 运行结果及报错内容 

![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/088115909446186.png "#left")
无报错;

###### 我的解答思路和尝试过的方法 

将上诉代码里的“    “月份”+      ” 去掉重新运行,发现没有问题,月份信息恢复正常

###### 我想要达到的结果

![img](https://img-mid.csdnimg.cn/release/static/image/mid/ask/513389909446192.png "#left")

d.getMonth() 返回值是数值, 比如二月返回值是数值1
"月份:"+d.getMonth()+1 是先计算 "月份:"+d.getMonth()
字符串与数值相加是把数值先转成字符串再与另一个字符串拼接在一起
"月份:"+d.getMonth() 结果是字符串 "月份:1"
之后再计算"月份:1"+1 也是字符串与数值相加, 结果是字符串 "月份:11"

应该加个括号先计算 d.getMonth()+1 即可

   console.log("月份:"+(d.getMonth()+1))

结果就是 "月份:2"

...........报错信息看下
因为getMonth返回的的是数字,前面拼接了字符串,这个时候就会变成字符串,字符串+1变成11字符串
过程
d.getMonth() ->1
“月份:”+1 ->“月份:1”
再加1就不是数学了,就是字符串拼接了,隐式装换
所以要用括号括起来
"月份:"+(d.getMonth()+1)

您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!
PS:问答VIP年卡 【限时加赠:IT技术图书免费领】,了解详情>>> https://vip.csdn.net/askvip?utm_source=1146287632