1. 程式人生 > >JavaScript window與undefined作為參數的作用

JavaScript window與undefined作為參數的作用

提高 節省空間 上線 關於 定義 內部 局部變量 image 輸出

1、原函數

技術分享

輸出結果:1

如圖:技術分享

2、加window的參數

技術分享

輸出結果:window對象

如圖:技術分享

註意:此時的window不是全局變量,而是局部變量

3、關於形參必須傳window麽?當然是不需要的

技術分享

輸出結果:window對象

如圖:技術分享

形參可以傳任意字符,只要實參傳的是window。函數

4、作用一 代碼會被壓縮,節省空間

技術分享

5、作用二 提高性能

技術分享

函數在執行過程中,能在參數中找到window,就不用去全局作用域中找,即效率高,提高性能。

6、是否可以實參也不傳?

可以,實參形參都不傳,內部還是可以訪問到window,這是因為window是全局變量,在哪都可以訪問到,此時在全局作用域中尋找的window,效率低,並且上線的時候不會被壓縮。

7、為什麽要傳入undefined?

在自調用的匿名函數的作用域內,確保undefined是真正的未定義,因為undefined能夠被重寫,賦值。

結論:window作為實參的用意:提高性能;方便代碼壓縮。

undefined作為形參的用意:防止undefined的值被修改。

JavaScript window與undefined作為參數的作用