为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript进阶篇7-23编程练习 标准答案疑问 (a+=b与a=a+b不是一样的么)

JavaScript进阶篇7-23编程练习 标准答案疑问 (a+=b与a=a+b不是一样的么)

wubin_work 2016-09-16 18:06:29
 var date=new Date();  var time='';//日期  time=date.getFullYear()+"年";  time+=time+date.getMonth()+1+"月";//这里会显示2016年9月//为何time=time+date.getMonth()+1+“月”会出现2016年81月 而不是2016年9月? 不是应该a+=b与a=a+b等价么 求大神告知为何time=time+date.getMonth()+1+“月” 会出现81月?而 +=就会正确?  time+=date.getDate()+"日";  var week=date.getDay()  switch(week){      case 0:          week='星期日';          break;      case 1:          week='星期一';          break;       case 2:          week='星期二';          break;      case 3:          week='星期三';          break;       case 4:          week='星期思';          break;      case 5:          week='星期五';          break;          case 6:          week='星期六';          break;      }  document.write(time+"&nbsp"+week);
查看完整描述

1 回答

已采纳
?
摩诃迦叶

TA贡献146条经验 获得超54个赞

运算符的先后顺序。   time+=date.getMonth()+1+"月";  实际上是 time = time + (date.getMonth()+1+"月");

你这样写的话time = time + date.getMonth()+1+"月"; 就变成 "2016年"+8 然后得到字符串"2016年8" 然后 "2016年8"+1得到 "2016年81"

查看完整回答
反对 回复 2016-09-16
  • 1 回答
  • 0 关注
  • 1143 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信