首頁 web前端 js教程 js中arguments的用法

js中arguments的用法

Dec 14, 2016 am 09:08 AM

arguments特性

arguments物件不能明確創建,arguments物件只有函數開始時才可用。函數的 arguments 物件並不是一個數組,存取單一參數的方式與存取數組元素的方式相同。索引 n 其實是 arguments 物件的 0…n 屬性的其中一個參數。
 

在javascript中,不需要明確指出參數名,就能存取它們。如:

function hi(){
if(arguments[0]=="andy"){
     return;
}
alert(arguments[0]);
}
登入後複製

arguments的length屬性

意義

傳回呼叫程式傳遞給函數的實際參數數目。

用法

[function.]arguments.length

其中可選項 function 參數是目前正在執行的 Function 物件的名稱。

說明

當 Function 物件開始執行時,腳本引擎將 arguments 物件的 length 屬性初始化為傳遞給該函數的實際參數數目。

js不會主動為你判斷你到底給函數傳了多少個參數,如果你多傳了,多餘的部分就沒有被使用,如果你少傳了,那麼沒傳的參數值就是undefined


所以我們可以藉助arguments的length屬性來偵測呼叫函數時是否使用了正確數目的實際參數,因為javascript是不會為你做這些事的


arguments 的0...n 屬性

意義

回傳一個 arguments 物件中的各個參數的實際值,對應的值是由一個正在執行的函數的 arguments 屬性傳回的。

用法

[function.]arguments[[0|1|2|...|n]]

參數

function

可選項。目前正在執行的 Function 物件的名稱。

0, 1, 2, …, n

必選項。 0 到 n 範圍內的非負整數,其中 0 代表第一個參數而 n 代表最後一個參數。最後參數 n 的值為 arguments.length-1

說明

0 . . . n 屬性所傳回的值就是傳遞給正在執行的函數的實際值。儘管實際上並不是一個參數數組,您還是可以按照與存取數組元素的方法相同的方式存取組成 arguments 物件的各個參數。

範例

下面的範例示範了 arguments 物件的 0 . . . n 屬性的用法

function ArgTest(){
   var s = "";
   s += "The individual arguments are: "
   for (n=0; n< arguments.length; n++){
      s += ArgTest.arguments[n];
      s += " ";
   }
   return(s);
}
print(ArgTest(1, 2, "hello", new Date()));
登入後複製

arguments的callee屬性

tion ,這有利於實現無名函數的遞歸或保證函數的封裝性。

用法

[function.]arguments.callee

可選項 function 參數是目前正在執行的 Function 物件的名稱。

說明

callee 屬性是 arguments 物件的一個成員,僅當相關函數正在執行時才可用。

callee 屬性的初始值就是正被執行的 Function 物件。這允許匿名的遞歸函數。

實例:

用遞歸來計算1到n的自然數總和:

<script>
   var sum=function(n){
    if(1==n) {
       return 1;
    } else {
       return n + arguments.callee(n-1);
     }
  }
  alert(sum(100));
</script>
登入後複製


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
2 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

在JavaScript中替換字符串字符 在JavaScript中替換字符串字符 Mar 11, 2025 am 12:07 AM

在JavaScript中替換字符串字符

jQuery檢查日期是否有效 jQuery檢查日期是否有效 Mar 01, 2025 am 08:51 AM

jQuery檢查日期是否有效

jQuery獲取元素填充/保證金 jQuery獲取元素填充/保證金 Mar 01, 2025 am 08:53 AM

jQuery獲取元素填充/保證金

10個jQuery手風琴選項卡 10個jQuery手風琴選項卡 Mar 01, 2025 am 01:34 AM

10個jQuery手風琴選項卡

10值得檢查jQuery插件 10值得檢查jQuery插件 Mar 01, 2025 am 01:29 AM

10值得檢查jQuery插件

HTTP與節點和HTTP-Console調試 HTTP與節點和HTTP-Console調試 Mar 01, 2025 am 01:37 AM

HTTP與節點和HTTP-Console調試

自定義Google搜索API設置教程 自定義Google搜索API設置教程 Mar 04, 2025 am 01:06 AM

自定義Google搜索API設置教程

jQuery添加捲軸到Div jQuery添加捲軸到Div Mar 01, 2025 am 01:30 AM

jQuery添加捲軸到Div

See all articles