最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

JS判斷傳入函數(shù)的參數(shù)是否為空(函數(shù)參數(shù)是否傳遞)

 更新時(shí)間:2023年05月01日 19:45:14   作者:hangge  
這篇文章主要介紹了JS判斷傳入函數(shù)的參數(shù)是否為空(函數(shù)參數(shù)是否傳遞),需要的朋友可以參考下

我們?cè)诰帉?xiě)代碼的時(shí)候,有什么需要判斷函數(shù)有沒(méi)有傳參,方便我們進(jìn)行后續(xù)的操作,下面是具體的判斷是否傳參的幾種方法

一、通過(guò)undefined對(duì)比

function jb51(x,y){
            if(x==undefined){
                x=100;
            }
            y=y==undefined?200:y;
            alert(x+y);
        }
        jb51();

直接判斷x==undefined,函數(shù)中直接這樣就行,如果別的需要結(jié)合typeof(變量)=='undefined'來(lái)判斷參數(shù)有沒(méi)有定義。

二、通過(guò)||

function fun(x,y){
            x=x||0;
            y=y||1;
            console.log(x+y);
        }
        fun();

就是判斷x是否存在,不存在則x=0,y不存在則為1

三、通過(guò)argument

function fun(x,y){
			x=arguments[0]?arguments[0]:100;
			y=arguments[1]?arguments[1]:200;
			return x+y;
		}
		alert(fun());
		alert(fun(1,2));

分別輸出 300,3

四、形參 實(shí)參 解釋argument

    function fn(a,b)
    {
        console.log(fn.length); //得到是 函數(shù)的形參的個(gè)數(shù)
        //console.log(arguments);
        console.log(arguments.length); // 得到的是實(shí)參的個(gè)數(shù)
        if(fn.length == arguments.length)
        {
            console.log(a+b);
        }
        else
        {
            console.error("對(duì)不起,您的參數(shù)不匹配,正確的參數(shù)個(gè)數(shù)為:" + fn.length);
        }
        //console.log(a+b);
    }
    fn(1,2);
    fn(1,2,3);

效果圖

補(bǔ)充

1,判斷參數(shù)是否傳遞

如果我們定義了一個(gè)帶參數(shù)的方法,調(diào)用的時(shí)候這些參數(shù)可以全部傳遞、部分傳遞、甚至不傳遞。

// 帶兩個(gè)參數(shù)的方法
function test(a, b) {
}
// 方法調(diào)用
test();
test(0);
test(0, 1);

(2)如果在函數(shù)中想要知道這個(gè)參數(shù)是否傳遞,可以通過(guò)如下方式判斷(注意是 3 個(gè)等號(hào))

// 帶兩個(gè)參數(shù)的方法
function test(a, b) {
  if(a === undefined){
    console.log("參數(shù)a沒(méi)有傳遞!");
  }
  if(b === undefined){
    console.log("參數(shù)b沒(méi)有傳遞!");
  }
}
// 方法調(diào)用
test(0);

效果圖

2,參數(shù)默認(rèn)值

(1)當(dāng)函數(shù)的某個(gè)參數(shù)沒(méi)有傳遞時(shí),如果想要它有個(gè)默認(rèn)值,可以這么寫(xiě)。

// 帶兩個(gè)參數(shù)的方法
function test(a, b) {
  a = (a === undefined ? 1 : a); // a默認(rèn)值為1
  b = (b === undefined ? 2 : b); // b默認(rèn)值為2
}

注意:不建議使用下面這種方式,因?yàn)槿绻麉?shù)為 0 的話(huà)會(huì)出問(wèn)題。

// 帶兩個(gè)參數(shù)的方法
function?test(a, b) {
??a = a | 1;?// a默認(rèn)值為1
??b = b | 2;?// b默認(rèn)值為2
}

(2)如果用 ES6 我們可以直接這么寫(xiě):

// 帶兩個(gè)參數(shù)的方法
function test(a = 1, b = 2) {
}

到此這篇關(guān)于JS判斷傳入函數(shù)的參數(shù)是否為空(函數(shù)參數(shù)是否傳遞)的文章就介紹到這了,更多相關(guān)js中函數(shù)傳參判斷內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 淺談Webpack4 plugins 實(shí)現(xiàn)原理

    淺談Webpack4 plugins 實(shí)現(xiàn)原理

    在wabpack 核心功能除了loader應(yīng)該就是plugins插件了,本文主要介紹了Webpack4 plugins 實(shí)現(xiàn)原理,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • cnblogs csdn 代碼運(yùn)行框?qū)崿F(xiàn)代碼

    cnblogs csdn 代碼運(yùn)行框?qū)崿F(xiàn)代碼

    大家用cnblogs,csdn博客發(fā)布技術(shù)文檔的時(shí)候,可以用下面的代碼實(shí)現(xiàn)運(yùn)行功能。當(dāng)然大家看了源碼就會(huì)發(fā)現(xiàn)其實(shí)方法還有很多。有更好的方法就發(fā)布一下啊。
    2009-11-11
  • 文章或博客自動(dòng)生成章節(jié)目錄索引(支持三級(jí))的實(shí)現(xiàn)代碼

    文章或博客自動(dòng)生成章節(jié)目錄索引(支持三級(jí))的實(shí)現(xiàn)代碼

    一個(gè)好的博文除了博文的質(zhì)量要好以外,好的組織結(jié)構(gòu)也能讓讀者閱讀的更加舒服與方便,我看很多網(wǎng)站里面有一些園友的博文都是分章節(jié)的,并且在博文的前面都帶有章節(jié)的目錄索引,點(diǎn)擊索引之后會(huì)跳轉(zhuǎn)到相應(yīng)的章節(jié)閱讀
    2020-05-05
  • JavaScript中常見(jiàn)的字符串操作函數(shù)及用法匯總

    JavaScript中常見(jiàn)的字符串操作函數(shù)及用法匯總

    這篇文章主要介紹了JavaScript中常見(jiàn)的字符串操作函數(shù)及用法,實(shí)例匯總了javascript常見(jiàn)的字符串轉(zhuǎn)換、分割、查詢(xún)、替換等技巧,非常具有實(shí)用價(jià)值,需要的朋友可以參考下
    2015-05-05
  • uniapp改變底部安全區(qū)頂部手機(jī)信號(hào)時(shí)間電池欄顏色樣式

    uniapp改變底部安全區(qū)頂部手機(jī)信號(hào)時(shí)間電池欄顏色樣式

    這篇文章主要為大家介紹了uniapp改變底部安全區(qū)頂部手機(jī)信號(hào)時(shí)間電池欄顏色樣式詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 基于uni-app開(kāi)發(fā)刻度尺組件的實(shí)現(xiàn)示例

    基于uni-app開(kāi)發(fā)刻度尺組件的實(shí)現(xiàn)示例

    本文主要介紹了基于uni-app開(kāi)發(fā)刻度尺組件的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • Bootstrap3下拉菜單的實(shí)現(xiàn)

    Bootstrap3下拉菜單的實(shí)現(xiàn)

    這篇文章主要介紹了Bootstrap3下拉菜單的實(shí)現(xiàn)方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下
    2017-02-02
  • webpack 1.x升級(jí)過(guò)程中的踩坑總結(jié)大全

    webpack 1.x升級(jí)過(guò)程中的踩坑總結(jié)大全

    webpack1已結(jié)不再維護(hù)了,官方在主推webpack2,最近在升級(jí)webpack過(guò)程中遇到了不少的問(wèn)題,所以下面這篇文章主要給大家總結(jié)了一些在webpack 1.x升級(jí)過(guò)程中的遇到的坑,以及詳細(xì)的解決方法,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-08-08
  • javascript寫(xiě)的異步加載js文件函數(shù)(支持?jǐn)?shù)組傳參)

    javascript寫(xiě)的異步加載js文件函數(shù)(支持?jǐn)?shù)組傳參)

    這篇文章主要介紹了javascript寫(xiě)的異步加載js文件函數(shù),同時(shí)支持單個(gè)文件和多個(gè)文件(數(shù)組傳參),但不兼容IE6,需要的朋友可以參考下
    2014-06-06
  • 高效的獲取當(dāng)前元素是父元素的第幾個(gè)子元素

    高效的獲取當(dāng)前元素是父元素的第幾個(gè)子元素

    例如處理事件的時(shí)候,有時(shí)候需要知道當(dāng)前點(diǎn)擊的是第幾個(gè)子節(jié)點(diǎn),而HTML DOM本身并沒(méi)有直接提供相應(yīng)的屬性,需要自己來(lái)計(jì)算。感興趣的朋友可以了解下本文
    2013-10-10

最新評(píng)論

德江县| 晋州市| 遂平县| 原阳县| 那坡县| 潍坊市| 盐边县| 平塘县| 龙陵县| 潼关县| 裕民县| 类乌齐县| 尉氏县| 奉新县| 余江县| 瑞安市| 海城市| 西贡区| 通海县| 新蔡县| 嫩江县| 九龙城区| 梁山县| 阿拉善右旗| 新竹县| 平武县| 辰溪县| 鄂托克旗| 无极县| 湘潭市| 故城县| 忻城县| 平泉县| 常宁市| 维西| 古丈县| 台南市| 安国市| 岳阳市| 金塔县| 东海县|