2011-09-29 39 views

回答

4

我不認爲這個術語在JavaScript中有一個特殊的,獨有的定義的含義。這可能意味着與everywhere else相同。

0

我會說它是「狀態正在改變」,但是,基本上就是這樣。它的極性相反是隻讀訪問。

+0

是不是純粹的功能相反? – Pawel

13

這不是JavaScript中的一個正式定義的術語,但我認爲它最常用於引用直接上下文之外的狀態更改。例如,下面的代碼將導致狀態執行後沒有變化,所以它會被視爲「無副作用」:

(function() { 
    // no side-effects, foo won't exist once this function is done executing 
    var foo = 'bar'; 
})(); 

...而在下面的代碼有副作用,因爲全局變量介紹:

(function() { 
    // no var keyword, so global variable created 
    foo = 'bar'; 
})(); 
+2

謝謝。我不知道在本地環境中省略var關鍵字會創建一個全局變量。 – ppecher

相關問題