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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

js變量問題

js變量問題

慕森卡 2019-01-31 17:14:18
分兩個問題:1.while相當于是一個塊級作用域。在塊級作用域中定義的變量name是一個全局變量。所以輸出的是obama。是這樣理解的嗎?2.之前定義的一個變量name='zach'。 之后在while中定義的name是把之前定義的name的覆蓋掉了嗎?還是說 ,只是把新的值 ‘obama’ 指向之前的name呢?求解惑更新:關于第二個問題,有點蒙蔽,有的說是替代了,有的說是更新name的值....我到底該如何抉擇
查看完整描述

1 回答

?
森林海

TA貢獻2011條經驗 獲得超2個贊

1.while不是塊級作用域,for也不算。JS的常用的塊級作用域是函數,不常見的還有with/catch等。所以你可以默認JS除函數外是沒有塊級作用域的


2.引擎在執行var name='obama'這里時,會查找有無name定義,如果有定義就直接賦值。因此答案是指向之前的name


===================

第二個問題是更新,這與引擎的處理方式有關。


對于說替代的答案,你們想過變量提升嗎?


等效代碼:


var name; 

var name;

name = 'zach'

name = 'obama'

告訴我這怎么替代?


查看完整回答
反對 回復 2019-02-01
  • 1 回答
  • 0 關注
  • 515 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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