大多數網站都聲稱作爲Function.arguments屬性的「被調用者」已被棄用。但有些網站更進一步,並說整個Functions.argument已被棄用,例如http://aptana.com/reference/api/Arguments.html爲什麼只提到被調用者,如果整個程序死在水中?我纔剛剛發現的「論據」,它似乎非常有用E.g:http://hungred.com/how-to/secret-arguments-array-javascript/Javascript:是不推薦參數數組?
28
A
回答
44
Function.arguments
是過時,但它只是有利於香草arguments
對象,函數內的可用的棄用。 (例如,使用x = arguments[i];
而不是x = theFunc.arguments[i];
)
這是現在首選的(並且就像你說的,非常有用的)訪問所收到的序號參數的方法。
1
callee已被棄用,但參數在許多應用程序中使用。我不知道參數是否被棄用。即使函數中沒有定義(params),您也可以使用它來獲取函數的所有參數。
大多數時候我用我開發jQuery插件。喜歡的東西:
$.fn.tooltip = function(method) {
if (methods[method]) {
return methods[method].apply(this, Array.prototype.slice.call(arguments, 1));
} else if (typeof method === 'object' || ! method) {
return methods.init.apply(this, arguments);
} else {
$.error('Method ' + method + ' does not exist on jQuery.tooltip');
}
};
正如你所看到的唯一方法是作爲參數傳遞,但內第一,如果參數的第一個值後分裂。這樣你可以傳遞一個函數名,以及這個函數使用的所有參數。
1
號,參數數組沒有在最新的5.1版本的規範棄用(見60頁)。但是,只有代碼不處於嚴格模式時,纔可以使用caller
對象。
6
Afaik arguments
已棄用作爲功能的一個屬性。見this MDN-link或this one
相關問題
- 1. 推薦PHP數組()
- 2. 推薦的JavaScript對象數組大小
- 3. 什麼是opencv_traincascade的推薦參數?
- 4. JavaScript數組推不是函數
- 5. javascript數組推不工作
- 6. 推Java數組JavaScript數組
- 7. 如何在java中推薦參數?
- 8. Javascript將數組推到數組,但串聯,而不是連接
- 9. 推薦元數據?
- 10. 數據庫推薦
- 11. 在數組上推薦參考文獻的問題?
- 12. Javascript:推薦將URL作爲url參數傳遞的方式是什麼?
- 13. chromecast是否有推薦的視頻編碼參數列表?
- 14. 什麼是推薦的命令行參數語法?
- 15. array_intersect()參數不是數組
- 16. 參數#2不是數組
- 17. Javascript對象的推薦構造函數是什麼?
- 18. JavaScript將函數和參數推送到數組並執行?
- 19. 第三方類需要不推薦使用ActionBarActivity作爲參數
- 20. JavaScript:檢測參數是數組而不是對象(Node.JS)
- 21. 不推薦使用:mysql_connect()函數:注意
- 22. Python不推薦使用的函數
- 23. 的Javascript推數組到2維數組
- 24. 將數據推送到javascript數組,但數組不增長
- 25. 推薦gcc內聯函數
- 26. 數據結構推薦
- 27. 編輯推薦人數據
- 28. Python數據結構推薦?
- 29. 推薦系統數據集
- 30. 什麼是推薦的JAX-RS組合?
啊,這就解釋了!非常感謝。 –
這是有道理的。如果Javascript想要一些多線程支持,這樣的全局有狀態對象正在被查殺。 –
爲什麼'Function.arguments'不推薦使用?它允許你直接訪問嵌套函數內父函數的參數,這是你不能用'arguments'對象實現的。 – Taurus