亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

操作符之間的優先級難道錯了嗎,我覺得該題為false

jq1=numa + 30 >10 && numb * 3<20;

document.write("jq1的值是:"+jq1+"<br>");


結果是 ?true

正在回答

5 回答

說到優先級, 是先是算術運算符,再進行比較運算符, 最后是邏輯運算符;

jq1=numa + 30 >10 && numb * 3<20;?

它的運算順序是:

  1. numa + 30. (假設結果為A(數值))

  2. A >10.(假設結果為B,(true或false))

  3. numb * 3.(假設結果為C(數值))

  4. ?C<20;(假設結果為D,(true或false))

  5. B && D

&&這個是"并且"操作符, 兩邊同時為ture, jq1的結果就為true, 否則為false;(順帶一提, &&操作也叫"中斷操作符", 也就是說, 如果第一項為false那么就不會驗證后面比較運輸符的真假, 直接返回false, 只有第一項為真時,第二項才會開始驗證, 以此類推.)

你的提問中沒有給出numa的值, 結果為ture, 那numa的值肯定是大于-20并且小于6.6666的一個正數.

如果numa的值大于6.666...那么numb * 3 < 20的驗證就為false, 進而jq1為false.

2 回復 有任何疑惑可以回復我~

jq1=numa + 30 >10 && numb * 3<20;相當于jq1={[(numa+30)>10]&&[(numb*3)<20]}

0 回復 有任何疑惑可以回復我~

true

1 回復 有任何疑惑可以回復我~

是TRUE,是先是算術,再是比較。在邏輯。再賦值

1 回復 有任何疑惑可以回復我~

為什么不是true

1 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

操作符之間的優先級難道錯了嗎,我覺得該題為false

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號