首頁技術(shù)文章正文

JS不確定參數(shù)個(gè)數(shù):rest語法

更新時(shí)間:2021-11-26 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

形參和實(shí)參

在了解不定參數(shù)和rest語法之前我們先介紹下參數(shù)的概念。JavaScript的參數(shù)有形參(parameter)和實(shí)參(argument),形參相當(dāng)于函數(shù)中定義的變量,實(shí)參就是運(yùn)行函數(shù)調(diào)用時(shí)傳入的參數(shù)。簡單的說,形參就是函數(shù)聲明時(shí)的變量,實(shí)參是我們調(diào)用該函數(shù)時(shí)傳入的具體參數(shù)。

例如下面代碼:

<script>
    function f(a,b){
        console.log(a+b);
    }
    f(1,4); // 輸出 5
</script>

代碼中f(a, b)中的a和b就是形參,f(1,4)中的1和4就是實(shí)參。


不定參數(shù)

談到不定參數(shù),我們就必須要了解arguments對象。

arguments對象是一個(gè)類數(shù)組對象(但不是Array的實(shí)例),因此可以使用中括號語法訪問其中的元素(第一個(gè)參數(shù)是 arguments[0],第二個(gè)參數(shù)是 arguments[1])。而要確定傳進(jìn)來多少個(gè)參數(shù),可以訪問arguments.length屬性。

arguments對象是函數(shù)中默認(rèn)就有的對象,它可以接收到多個(gè)不定數(shù)量的參數(shù),并且以數(shù)組的形式存在。

<script>
    function f(a,f,t,...rest){
        console.log(rest);
    }
    f(1,3,4,5,6); //輸出[5,6]
    
	function f(...rest){
		console.log(rest);
	}
    f(1,3,4,5,6);   // 輸出[1,3,4,5,6]
</script>

當(dāng)不確定要傳入多少參數(shù)時(shí)可以使用 ...rest 表示,rest是一個(gè)數(shù)組,數(shù)組中的數(shù)據(jù)是沒有對應(yīng)形參的數(shù)據(jù)。



猜你喜歡:

JavaScript事件由什么組成的?

JavaScript數(shù)組類型檢測的方法

Javascript如何改變數(shù)組的長度?

Javascript多維數(shù)組介紹

黑馬程序員web前端開發(fā)高手班

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!