簡(jiǎn)介

我想這是在我總結(jié)JavaScript系列中最為需要注意的,最為重要的內(nèi)容。你必須要去了解這些問(wèn)題特性,才能準(zhǔn)備好應(yīng)對(duì)措施,這真的很重要。

毒瘤

全局變量

全局變量的存在的確是帶來(lái)了方便,但是我覺得JavaScript對(duì)于全局變量的依賴性已經(jīng)到達(dá)一種恐怖的狀態(tài)。如果某些全局變量的名稱碰巧和子程序中的變量名稱相同,那么它們就會(huì)相互沖突,可能導(dǎo)致程序無(wú)法執(zhí)行,而且不好調(diào)試。

文章中定義了三種定義全局變量的方式,分別是:

  1. 在任何函數(shù)之外放置一個(gè)var語(yǔ)句,這個(gè)和其他語(yǔ)言一樣:

    var foo = value;

  2. 直接給全局對(duì)象添加一個(gè)屬性。如果是在Web瀏覽器里,全局變量為Window:

    window.foo = value;

  3. 直接使用未經(jīng)處理的變量,這個(gè)稱為隱式的全局變量:

    foo = value;

工作中遇見的普遍的錯(cuò)誤應(yīng)該是第三種,這很普遍。

作用域

JavaScript并沒有實(shí)現(xiàn)作用域,因此代碼塊中聲明的變量在包含此代碼塊的函數(shù)的任何位置都是可見的。

所以,聲明變量最好的方式是每個(gè)函數(shù)的開頭部分聲明所有變量。

延伸閱讀

學(xué)習(xí)是年輕人改變自己的最好方式-Java培訓(xùn),做最負(fù)責(zé)任的教育,學(xué)習(xí)改變命運(yùn),軟件學(xué)習(xí),再就業(yè),大學(xué)生如何就業(yè),幫大學(xué)生找到好工作,lphotoshop培訓(xùn),電腦培訓(xùn),電腦維修培訓(xùn),移動(dòng)軟件開發(fā)培訓(xùn),網(wǎng)站設(shè)計(jì)培訓(xùn),網(wǎng)站建設(shè)培訓(xùn)學(xué)習(xí)是年輕人改變自己的最好方式