[問題] 關於 try catch 的問題!

看板Flash作者 (123)時間15年前 (2010/09/27 17:18), 編輯推噓1(107)
留言8則, 3人參與, 最新討論串1/1
各位大大晚安 ~~~ 現在遇到一個關於 try catch 的問題 ~~~~ 以下是我的code ~ var a:String = "123"; tw(a); try{ function tw(a:Array){ trace(a); } }catch(e:Error){ trace("error"); } 因為 a 的型別可能為Array、String、int ...等 但目前的function tw的接收型別只能設定一種 想要用try catch 包住,以免發生錯誤時會讓程式終止 不知道要怎麼包才好 >"< 拜託高手大大了 !!! 謝謝~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.117.50.158

09/27 19:36, , 1F
try..catch主要是用在runtime時期捕捉錯誤的
09/27 19:36, 1F

09/27 19:37, , 2F
你說的這個狀況是compile時候的錯誤
09/27 19:37, 2F

09/27 19:38, , 3F
傳進去的參數通常是你可以控制的,所以應該是你先過濾
09/27 19:38, 3F

09/27 19:38, , 4F
之後再傳給func,而不是把func包在try..catch裡 :)
09/27 19:38, 4F

09/27 19:40, , 5F
至於判斷參數型別,你可以用typeof()
09/27 19:40, 5F

09/27 19:41, , 6F
抱歉第2行講錯,其實也可能是runtime時的錯誤 :)
09/27 19:41, 6F

09/27 22:09, , 7F
參數那邊可以用*這個特殊型別
09/27 22:09, 7F

09/27 22:33, , 8F
謝謝大家 問題解決囉 ^^
09/27 22:33, 8F
文章代碼(AID): #1Ce65prx (Flash)