请教下 这段JS代码到底什么意思 第2次计算为什么? 没弄明白

  var a,b,sum;

  var  a  = 5;

  var  b  = 100%7;  

  sum = a > b && a*b > 0 ;

document.write( "我认为 a 的值是:" +a+ " b的值是:" +b+ "sum 的值是:" +sum+"<br/>");

  document.write( "答案是,第一轮计算后,a 为:"+ a +";b为:"+b +";第一次计算sum为:"+ sum +"<br/>");


  sum = ( (++a) + 3 ) / (2 - (--b) ) * 3;  

  document.write("再一次计算后,我认为 a 的值是:" +  a  + " b的值是:" +  b + "sum 的值是:" +  sum +"<br/>"); 

  document.write( "答案是,第二轮计算后,a 为:" + a + ";b为:" + b +";第二次计算sum为:"+ sum +",sum的类型也发生变化了。");


我认为 a 的值是:5 b的值是:2sum 的值是:true
答案是,第一轮计算后,a 为:5;b为:2;第一次计算sum为:true
再一次计算后,我认为 a 的值是:6 b的值是:1sum 的值是:27
答案是,第二轮计算后,a 为:6;b为:1;第一次计算sum为:27,sum的类型也发生变化了



qq_12月_0
浏览 1394回答 4
4回答

Dling

sum的类型并没有定义啊,它会按照程序计算得到它的值跟类型...第一次计算是定义它为判断true or false,得出当然是布尔值了第二次计算是真的计算,就+-*/这样的计算,得出的结果当然是数值啦先去看下了解下计算的优先级吧。

Mr杨5

你想问的是第二次为啥是27还是为啥不是布尔值?

00小伙

第二次为什么不明白?自加自减不懂?很简单的,不懂就去看看计算的优先级吧。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript