Re: [閒聊] JS大師請進

看板Marginalman作者 (^)o(^)時間3周前 (2024/04/07 23:47), 編輯推噓0(001)
留言1則, 1人參與, 3周前最新討論串7/7 (看更多)
※ 引述《surimodo (搖滾少女!! 活力棉花糖!!)》之銘言: : 一般來說 : 是推薦在function裡面寫function : 還是把function獨立出來 : $(document).ready(function(){ : function myFunction() { : console.log("初始化成功!"); : } : myFunction(); : }); : 類似這樣 : myFunction寫裡面還是外面 1. 編輯器支援問題 根據編輯器的支援程度,有的只會列出最外面的函式/關鍵字 那就可以根據這函式是否該被列出,來決定放哪 2. Closure memory leak 問題 若你的 scope 中有 closure,而且定義的函式有被 reference 那該函式就算沒有被使用也會導致無法回收,進而佔用更多記憶體 所以若打算建立 closure,可以考慮哪些變數放 closure 裡或外 3. 函式是否有 side effect 原則上,pure function 的效能都比 closure 更好 也就是沒需要的話,就放外面 4. 模組結構 現在大部份的環境都支援多檔案、import 或 require 模組 因此即使把函式定義在外面也是定在 module scope 中 但若是在很老的環境裡,定在外面會造成 pollution 那放在裡面,或是使用特定的 namespace 機制就會更好 5. callback 與短函式 若只是單純的 arrow function,那額外拉出去也不會增加可讀性 若只是定義 callback,根據函式的行數,額外拉出去也不一定會更好讀 6. 縮排 在函式裡定義函式就會增加一次縮排,看自己能接受到哪吧 -- ▆▄   -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.248.219.31 (臺灣) ※ 文章網址: https://www.ptt.cc/bbs/Marginalman/M.1712504863.A.E0E.html

04/07 23:51, 3周前 , 1F
大師
04/07 23:51, 1F
文章代碼(AID): #1c4i0VuE (Marginalman)
討論串 (同標題文章)
文章代碼(AID): #1c4i0VuE (Marginalman)