[翻譯]Keeping your JavaScript out of the global scope

Source Website (翻譯練手) 2017年12月15日javascript

Keeping your JavaScript out of the global scope (and why you want to)

這周,咱們學習了關於JavaScript Scopehow to define and update variables across different types of scopejava

你也許想在這時候在全局做用域中聲明一個函數或者變量(你想讓其餘的script可以使用它,例如,一個輕量級的框架。)bash

可是這樣來講,你想在全局做用域中使用你的方法和變量。同時,若是另外一個script或者另外一個開發者定義了一個和你的script裏面名字如出一轍的函數或者變量,那將會出現重寫或者形成衝突。app

你能夠在詞法做用域中用一個函數封裝你的代碼。框架

// Wrapper for your code(封裝你的代碼)
var myScripts = function () {
	// Your codes goes here...
};

// Run your scripts
myScripts();
複製代碼

若是你想當文件運行且沒有加載你的函數時代碼當即運行,你能夠使用一種名爲當即執行函數來作這件事情。當即執行函數是(內嵌,沒有名字)一個匿名函數能夠馬上運行。函數

;(function (window, document, undefined) {
	// Your code goes here...
})(window, document);
複製代碼

使用兩種之一能夠讓你的代碼更強壯。post

相關文章
相關標籤/搜索