javascript - 如果就一行程式碼 但是很多地方復用 這種情況怎麼處理呢 封裝成一個全域方法嗎 還是直接寫? ~
ringa_lee
ringa_lee 2017-07-05 11:00:17
0
5
1105
location.assign('http://www.bing.com');

假如就是一句跳頁的程式碼 登陸或某某邏輯成功後都要執行的 需要封裝成全域方法嗎?就一句真的有必要嗎?

或說充分利用編輯器的全域替換等功能 還能提高點效能 雖然微乎其微~

ringa_lee
ringa_lee

ringa_lee

全部回覆(5)
typecho

如果沒有邏輯上的判斷,就一個跳轉地址,就放到常數吧,如果有業務的邏輯判斷,就封裝。

phpcn_u1582

如果是單純的跳轉邏輯,那麼不用封裝成單獨的方法,可以講連接放在一個的常數檔中。因為你在這裡說了,就一句話邏輯,所以這裡不會有邏輯變化,而可能變化的就是連接地址,為了統一管理,那麼就放在單獨的常量文件中去。

如果這個跳鏈過程有自己的邏輯判斷,例如什麼條件跳那個位址這樣。那就可以封裝成方法,供其他地方呼叫。這樣這塊邏輯變化時只用修改一個地方。

所以是否封裝,和封裝什麼,是根據可能變化的需求而定的

世界只因有你

上個項目我是都直接寫了,覺得沒有必要封裝。而且能不能提高效能講道理我是不確定的,我自己沒比較過。

淡淡烟草味

封裝程式碼是為了減少程式碼的重複,對於一行程式碼,封裝或不封裝都差不多,因為你封裝了,引用它也要再寫一段程式碼,程式碼量也沒太大變化。

刘奇

前提:有這麼一段程式碼是很多地方都用到的,而且不存在很多每個地方個性化的改變

如果是我,我會放到一個地方,然後統一從一個地方調用(可以是全局,也可以是util之類),目的是為了:

  1. 減少以後可能會有的擴展的難度。萬一以後發現需要加更多的東西,那麼改起來方便

  2. 減少修改時的工作量。如果要改href,那就不需要一個一個找去替換,減少出錯的可能

  3. 便於debug。你可以準確的知道是從哪裡跳轉的,而不是很多地方都可能跳轉。如果莫名其妙跳轉,打斷點就直接打到這一個地方,然後向上找就能找到問題所在。而不是需要打很多斷點到不同的地方。

  4. 這種簡單的邏輯,明顯程式碼的方便簡潔的作用遠大於程式碼的效能,所以我不會考慮效能的問題

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板