第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

聲明沒有var關(guān)鍵字的變量

聲明沒有var關(guān)鍵字的變量

慕哥9229398 2019-09-02 09:06:51
在w3schools寫道:如果聲明變量而不使用“var”,則變量始終變?yōu)镚LOBAL。在函數(shù)內(nèi)聲明全局變量是否有用?我可以想象在某個事件處理程序中聲明一些全局變量,但它有什么用呢?更好地使用RAM?
查看完整描述

3 回答

?
慕村9548890

TA貢獻1884條經(jīng)驗 獲得超4個贊

忘記var時的副作用


隱含全局變量和明確定義的變量之間存在一個細微差別。區(qū)別在于使用delete運算符取消定義這些變量的能力:


?無法刪除使用var創(chuàng)建的全局變量(在任何函數(shù)之外的程序中創(chuàng)建的全局變量)。


?可以刪除在沒有var的情況下創(chuàng)建的隱含全局變量(無論是否在函數(shù)內(nèi)創(chuàng)建)。


這表明隱含的全局變量在技術(shù)上不是真正的變量,但它們是全局對象的屬性??梢允褂胐elete運算符刪除屬性,而變量不能:


// define three globals

var global_var = 1;

global_novar = 2; // antipattern

(function () {

? ?global_fromfunc = 3; // antipattern

}());

// attempt to delete

delete global_var; // false

delete global_novar; // true

delete global_fromfunc; // true

// test the deletion

typeof global_var; // "number"

typeof global_novar; // "undefined"

typeof global_fromfunc; // "undefined"

在ES5嚴格模式下,對未聲明變量的賦值(例如前面代碼段中的兩個反模式)將引發(fā)錯誤。

查看完整回答
反對 回復 2019-09-02
?
德瑪西亞99

TA貢獻1770條經(jīng)驗 獲得超3個贊

全局變量的唯一用途是,如果您需要全局訪問它們。在這種情況下,您應該使用var函數(shù)外部的關(guān)鍵字來聲明它們,以明確您確實要創(chuàng)建全局變量,并且不要忘記var在嘗試聲明局部變量時。

通常,您應該嘗試對代碼進行范圍調(diào)整,以便在全局范圍內(nèi)盡可能少地使用代碼。您在腳本中使用的全局變量越多,您在另一個腳本中使用它的可能性就越小。

通常,函數(shù)中的變量應該是局部變量,以便在退出函數(shù)時它們消失。


查看完整回答
反對 回復 2019-09-02
  • 3 回答
  • 0 關(guān)注
  • 624 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號