DRY它起來。
var b='block',h='none',m='message',f='fade';
function s(i,d){document.getElementById(i).style.display=d}
function open(){s(m,b);s(f,b)}
function close(){s(m,h);s(f,h)}
隨着空格和適當的變量名(要傳遞到minifier),這看起來像:
var show = 'block', hide = 'none', message = 'message', fade = 'fade';
function setStyle(id, display) {
document.getElementById(id).style.display=display;
}
function open() {
setStyle(message, show);
setStyle(fade, show);
}
function close() {
setStyle(message, hide);
setStyle(fade, hide);
}
有不涉及到這個問題,但有一些最佳實踐值得考慮的是,如果您的項目超出這種微不足道的情況:
- 使用縮小。我最喜歡的是uglifyjs。這使您可以在未定義的代碼中使用有意義的變量名稱(如第二個示例)。縮小器將輸出更類似於第一個例子(但可能甚至更好)的代碼。即使使用縮小器,也要考慮它可以做什麼和不可以做什麼 - 創建一個私有快捷方式來訪問像public.getElementById這樣的公共API,如果您經常使用該API,可以幫助縮小規模。查看縮小的代碼以確保沒有什麼可以優化的。
- 將你的javascript分離成獨立於頁面加載的.js模塊,如果可能的話,使用asychrounously。
- 管理您的所有靜態資產(如.js模塊),以使它們具有較長的高速緩存超時 - 使用
Expires:
http標頭。然後在實際更改時更改其網址。這樣,客戶端可以無限期地緩存它們,直到您更改它們,然後客戶端立即獲取新版本。
- 在函數包裝中放置離散模塊,以便您的變量不會與其他代碼段 - 您自己的或第三方模塊發生衝突。如果你想使一個變量公開,做到這一點明確:
window.pubvar =
+1「我不使用jQuery在我的代碼只是一件事情的粉絲。」 –
幾乎屬於[codegolf](http://codegolf.stackexchange.com/) –
使用jQuery(快餐,包含反式脂肪)通常花更少的時間,但是當你做自制(健康)時,你知道它裏面有什麼,你不需要穿上額外的脂肪。 Fat =你不使用的額外千字節的代碼。 – user1431627