課程
/前端開發
/JavaScript
/JavaScript進階篇
jq1=numa + 30 >10 && numb * 3<20;
document.write("jq1的值是:"+jq1+"<br>");
結果是 ?true
2017-03-28
源自:JavaScript進階篇 2-12
正在回答
說到優先級, 是先是算術運算符,再進行比較運算符, 最后是邏輯運算符;
jq1=numa + 30 >10 && numb * 3<20;?
它的運算順序是:
numa + 30. (假設結果為A(數值))
A >10.(假設結果為B,(true或false))
numb * 3.(假設結果為C(數值))
?C<20;(假設結果為D,(true或false))
B && D
&&這個是"并且"操作符, 兩邊同時為ture, jq1的結果就為true, 否則為false;(順帶一提, &&操作也叫"中斷操作符", 也就是說, 如果第一項為false那么就不會驗證后面比較運輸符的真假, 直接返回false, 只有第一項為真時,第二項才會開始驗證, 以此類推.)
你的提問中沒有給出numa的值, 結果為ture, 那numa的值肯定是大于-20并且小于6.6666的一個正數.
如果numa的值大于6.666...那么numb * 3 < 20的驗證就為false, 進而jq1為false.
jq1=numa + 30 >10 && numb * 3<20;相當于jq1={[(numa+30)>10]&&[(numb*3)<20]}
true
是TRUE,是先是算術,再是比較。在邏輯。再賦值
為什么不是true
舉報
本課程從如何插入JS代碼開始,帶您進入網頁動態交互世界
1 回答保持先后順序(操作符優先級)
3 回答個人覺得優先級應該是這樣
4 回答多個邏輯操作符的優先級如何確定?
4 回答運算符優先級?
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2017-03-28
說到優先級, 是先是算術運算符,再進行比較運算符, 最后是邏輯運算符;
jq1=numa + 30 >10 && numb * 3<20;?
它的運算順序是:
numa + 30. (假設結果為A(數值))
A >10.(假設結果為B,(true或false))
numb * 3.(假設結果為C(數值))
?C<20;(假設結果為D,(true或false))
B && D
&&這個是"并且"操作符, 兩邊同時為ture, jq1的結果就為true, 否則為false;(順帶一提, &&操作也叫"中斷操作符", 也就是說, 如果第一項為false那么就不會驗證后面比較運輸符的真假, 直接返回false, 只有第一項為真時,第二項才會開始驗證, 以此類推.)
你的提問中沒有給出numa的值, 結果為ture, 那numa的值肯定是大于-20并且小于6.6666的一個正數.
如果numa的值大于6.666...那么numb * 3 < 20的驗證就為false, 進而jq1為false.
2017-04-30
jq1=numa + 30 >10 && numb * 3<20;相當于jq1={[(numa+30)>10]&&[(numb*3)<20]}
2017-03-28
true
2017-03-28
是TRUE,是先是算術,再是比較。在邏輯。再賦值
2017-03-28
為什么不是true