本篇內(nèi)容主要講解“javascript中如何獲取函數(shù)的參數(shù)個數(shù)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“javascript中如何獲取函數(shù)的參數(shù)個數(shù)”吧!
在樂昌等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強發(fā)展的系統(tǒng)性、市場前瞻性、產(chǎn)品創(chuàng)新能力,以專注、極致的服務理念,為客戶提供網(wǎng)站建設(shè)、做網(wǎng)站 網(wǎng)站設(shè)計制作定制網(wǎng)站開發(fā),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,營銷型網(wǎng)站,成都外貿(mào)網(wǎng)站制作,樂昌網(wǎng)站建設(shè)費用合理。
在javascript中,可以使用arguments對象的length屬性來獲取方法(函數(shù))的參數(shù)個數(shù),該屬性可以獲取函數(shù)的實參個數(shù);使用函數(shù)對象的length屬性來獲取函數(shù)的形參個數(shù)。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
方法(method)是通過對象調(diào)用的JavaScript函數(shù)。也就是說,方法也是函數(shù),只是比較特殊的函數(shù)。
在JavaScript中,可以使用arguments 對象的 length 屬性可以獲取函數(shù)的實參個數(shù)。arguments 對象只能在函數(shù)體內(nèi)可見,因此 arguments.length
也只能在函數(shù)體內(nèi)使用。
使用函數(shù)對象的 length 屬性可以獲取函數(shù)的形參個數(shù)。該屬性為只讀屬性,在函數(shù)體內(nèi)、體外都可以使用。
示例
下面示例設(shè)計一個 checkArg() 函數(shù),用來檢測一個函數(shù)的形參和實參是否一致,如果不一致則拋出異常。
function checkArg(a) { //檢測函數(shù)實參與形參是否一致 if (a.length != a.callee.length) //如果實參與形參個數(shù)不同,則拋出錯誤 throw new Error("實參和形參不一致"); } function f(a, b) { //求兩個數(shù)的平均值 checkArg(arguments); //根據(jù)arguments來檢測函數(shù)實參和形參是否一致 return ((a * 1 ? a : 0) + (b * 1 ? b : 0)) / 2; //返回平均值 } console.log(f(6)); //拋出異常。調(diào)用函數(shù)f,傳入一個參數(shù)
說明:
arguments 對象表示函數(shù)的實參集合,僅能夠在函數(shù)體內(nèi)可見,并可以直接訪問。
arguments 對象的 length 屬性和 callee 屬性最為常用:
使用 length 屬性可以獲取函數(shù)的實參個數(shù)。arguments 對象只能在函數(shù)體內(nèi)可見,因此 arguments.length 也只能在函數(shù)體內(nèi)使用。
使用 callee 屬性可以引用當前 arguments 對象所在的函數(shù)。使用 callee 屬性可以在函數(shù)體內(nèi)調(diào)用函數(shù)自身。在匿名函數(shù)中,callee 屬性比較有用。例如,利用它可以設(shè)計遞歸調(diào)用。
到此,相信大家對“javascript中如何獲取函數(shù)的參數(shù)個數(shù)”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進入相關(guān)頻道進行查詢,關(guān)注我們,繼續(xù)學習!
新聞標題:javascript中如何獲取函數(shù)的參數(shù)個數(shù)
本文URL:http://www.rwnh.cn/article48/jihoep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)建站、網(wǎng)站排名、微信小程序、品牌網(wǎng)站設(shè)計、外貿(mào)建站、網(wǎng)站導航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)