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

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

菜鳥提問:求a,b的值

題一:

以下代碼執行后a,b的值分別是

var?a?=?0;

var?b?=?true||a++;

A.1,true

B.0,true

C.1,1

D.1,0

正確答案:?B


題二:

以下代碼執行后a,b的值分別是

var?a?=?0;

var?b?= 0||++a;

A.1,0

B.1,1

C.0,0

D.0,1

正確答案:B

我就搞不懂題一中a=0,題二中為毛a就等于1了??有變化的不是只有b嗎?

正在回答

3 回答

一、var?b?=?true||a++; ?由于這是個邏輯或語句,當前面是true的時候,就直接輸出了b=true,后面的語句不會執行,

也就是說a++這個語句沒有執行,所以a=0;b=true

二、var?b?= 0||++a; 由于前面是0(如果不是0,就會直接輸出,后面的語句不會執行),就會繼續執行后面的語句;++a就相當于a=a+1之后,繼續進行運算,所以b=1,a=1.

其實直接在編碼工具里運行一次更加明白。

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

隔壁諸葛村夫

補充下----: var b = 0||++a; 由于前面是0(相當于Boolean的false,會執行后面的語句,直接輸出后面表達式的值),如果前面是非0數字或字符串,(相當于Boolean的true,不會執行后面的語句)直接輸出 '||' 前面的內容。比如,var b="中國"||++a; 就輸出"中國"
2016-09-17 回復 有任何疑惑可以回復我~
#2

慕粉1826222000

比如題一: 怎么去判斷前面是true還是false?是根據給出的選項去推是嗎? 如果有個選項是0,1 是不是也是對的???
2017-02-12 回復 有任何疑惑可以回復我~

明白了 ,多謝!

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

考點是++a與a++的區別。

按理說在兩句執行完后,a的值應該都是1啊。

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

舉報

0/150
提交
取消

菜鳥提問:求a,b的值

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

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

幫助反饋 APP下載

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

公眾號

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