1、官方說明html
點擊訪問app
2、使用心得函數
arguments包含了當前執行方法的參數,注意,不包含默認參數!spa
arguments能夠全局訪問,能夠在任何方法裏訪問,除此以外,在定義變量的時候或者初始化的時候是不能訪問的。code
arguments本質上是一個Array的實例,可使用任何Array的方法,不過又比Array多了一個屬性:callee,這個屬性表示當前正在執行的方法的引用,好比你在某個方法test下斷點,當斷點到此處的時候,callee===test。orm
arguments的每一個實例都是不一樣的,也就是說,執行到不一樣的方法,存在不一樣的arguments實例,不過你能夠將它們的實例保存下來,這些實例之間並不會產生衝突。htm
3、注意事項對象
特別要說明的是,關於arguments.length,先看代碼:blog
1 function test1(p1:int, p2:int) 2 { 3 trace(arguments.length) 4 trace(arguments) 5 } 6 7 function test2(p1:int, p2:int = 400) 8 { 9 trace(arguments.length) 10 trace(arguments) 11 } 12 13 test1(100,200) 14 test2(300) 15 16 //output: 17 2 18 100 200 19 1 20 300
test2有一個默認參數,但在執行時,arguments並同有把這個默認參數算在裏面。隊列
4、實際應用
5、雜項
這裏還用到了Function這個對象的apply方法,關於這個方法,能夠看一上官方的文檔,點擊查看。
獲取當前正在執行的方法名,網友的方法,點擊查看。
(new Error()).getStackTrace().split("/")[1].split("(")[0]