您好,登錄后才能下訂單哦!
本篇內容主要講解“javascript中如何獲取函數的參數個數”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“javascript中如何獲取函數的參數個數”吧!
在javascript中,可以使用arguments對象的length屬性來獲取方法(函數)的參數個數,該屬性可以獲取函數的實參個數;使用函數對象的length屬性來獲取函數的形參個數。
本教程操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
方法(method)是通過對象調用的JavaScript函數。也就是說,方法也是函數,只是比較特殊的函數。
在JavaScript中,可以使用arguments 對象的 length 屬性可以獲取函數的實參個數。arguments 對象只能在函數體內可見,因此 arguments.length
也只能在函數體內使用。
使用函數對象的 length 屬性可以獲取函數的形參個數。該屬性為只讀屬性,在函數體內、體外都可以使用。
示例
下面示例設計一個 checkArg() 函數,用來檢測一個函數的形參和實參是否一致,如果不一致則拋出異常。
function checkArg(a) { //檢測函數實參與形參是否一致 if (a.length != a.callee.length) //如果實參與形參個數不同,則拋出錯誤 throw new Error("實參和形參不一致"); } function f(a, b) { //求兩個數的平均值 checkArg(arguments); //根據arguments來檢測函數實參和形參是否一致 return ((a * 1 ? a : 0) + (b * 1 ? b : 0)) / 2; //返回平均值 } console.log(f(6)); //拋出異常。調用函數f,傳入一個參數
說明:
arguments 對象表示函數的實參集合,僅能夠在函數體內可見,并可以直接訪問。
arguments 對象的 length 屬性和 callee 屬性最為常用:
使用 length 屬性可以獲取函數的實參個數。arguments 對象只能在函數體內可見,因此 arguments.length 也只能在函數體內使用。
使用 callee 屬性可以引用當前 arguments 對象所在的函數。使用 callee 屬性可以在函數體內調用函數自身。在匿名函數中,callee 屬性比較有用。例如,利用它可以設計遞歸調用。
到此,相信大家對“javascript中如何獲取函數的參數個數”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。