Re: [討論] js程式稍微一長 就會暴走得很難懂orz

看板Ajax作者 (杉斑加紋)時間13年前 (2012/09/01 11:51), 編輯推噓1(101)
留言2則, 1人參與, 最新討論串2/4 (看更多)
※ 引述《carlcarl (carl)》之銘言: : https://github.com/carlcarl/CaGo/blob/master/js/cago.js : 大家好 最近想改一下之前寫的程式 然後發現我很多又都看不懂了囧 : 總覺得就是亂~.~ : 這個程式主要是parse圍棋棋譜 用canvas畫出來這樣@@ : 不知道能不能給我一點意見 關於架構或是style方面的 或是其他任何意見都可以 : 比如說 : 1. : 有些變數我是為了不想每次都算才設的 像這種變數我就覺得很難命名orz : 2. : object的宣告好像也有點亂 有些必須先在prototype裡面寫好一些function才能宣告 : 3. : 然後有些是object包含多重array 多重array裡又包含object : object裡面又有一些屬性的值 : 像這種 如果要拿object的值 我不知道是要直接一個function做完 : 還是前面的部份用function 然後後面自己拿物件的屬性這樣 : 一個function做完的話 又會因為整個架構一層包一層 命名又會變得很鱉扭orz 去掉下面說的糟糕處, 1. 還好啦, 至少我看得懂 2. 程式不大, object的宣告也不多, 所謂的亂也沒那麼嚴重 GoMap MapMove Move Dead 我看到的就這四個 3. 沒看細節, 所以... 最糟糕的地方是 var goMap = new GoMap(); var exGoMap = new GoMap(); goMap.insertEmptyMap(); for(var i = 0; i < FIXED_SIZE; i++) { .... 這個應該放到 main 裡 var goMap; var exGoMap; .... main() { goMap = new GoMap(); exGoMap = new GoMap(); goMap.insertEmptyMap(); for(var i = 0; i < FIXED_SIZE; i++) { .... ... 其它還不錯, 可以用了, 除非要擴充功能, 也沒必要再去改 XD 不然可試著改成 jquery plugin, 把myCanvas 和table放到內部生成再append, 使用時就可以這樣, $( "#divCago" ).cago( "file" ); 再把變數封裝好, 就可多個實體, $( "#divCago01" ).cago( "file" ); $( "#divCago02" ).cago( "file" ); 補: 我不知為何在firefox上沒法 go, 改了後就好了 "go" : function(filePath) { //$.get(filePath, main); $.ajax( { url: filePath, dataType: "text", success: function(data){ main(data); } } ); }, -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 112.104.185.228 ※ 編輯: ChowMein 來自: 112.104.185.228 (09/01 12:07)

09/01 16:52, , 1F
我在firefox上面跑沒問題的說@@a
09/01 16:52, 1F

09/01 16:53, , 2F
另外感謝你的建議!
09/01 16:53, 2F
文章代碼(AID): #1GGOPS6d (Ajax)
討論串 (同標題文章)
文章代碼(AID): #1GGOPS6d (Ajax)