日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

JS入门之arguments对象

發布時間:2025/6/15 javascript 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 JS入门之arguments对象 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?? 每天一對象,JS天天見,今天我們來看看arguments對象及屬性。arguments對象不能顯式創建,arguments對象只有函數開始時才可用。函數的?arguments?對象并不是一個數組,訪問單個參數的方式與訪問數組元素的方式相同。索引?n?實際上是?arguments?對象的?0…n?屬性的其中一個參數。

??下面的示例演示了?arguments?對象的用法,arguments對象和Function是分不開的。
?1function?ArgTest(a,?b){
?2???var?i,?s?=?"The?ArgTest?function?expected?";
?3???var?numargs?=?arguments.length;?????//?獲取被傳遞參數的數值。
?4???var?expargs?=?ArgTest.length;???????//?獲取期望參數的數值。
?5???if?(expargs?<?2)
?6??????s?+=?expargs?+?"?argument.?";
?7???else
?8??????s?+=?expargs?+?"?arguments.?";
?9???if?(numargs?<?2)
10??????s?+=?numargs?+?"?was?passed.";
11???else
12??????s?+=?numargs?+?"?were?passed.";
13???s?+=?"\n\n"
14???for?(i?=0?;?i?<?numargs;?i++){??????//?獲取參數內容。
15???s?+=?"??Arg?"?+?i?+?"?=?"?+?arguments[i]?+?"\n";
16???}

17???return(s);??????????????????????????//?返回參數列表。
18}

?? 以上是arguments對象,由于和Function對象緊密地聯系在一起。也就是說每一個函數都有自己的argument屬性。下面我們來看看argument屬性:為當前執行的function?對象返回一個arguments?對象,function 參數是當前執行函數的名稱,可以省略。

?? 通過?arguments?屬性(相對于Function來說),函數可以處理可變數量的參數。arguments?對象的?length?屬性包含了傳遞給函數的參數的數目。對于arguments?對象所包含的單個參數,其訪問方法與數組中所包含的參數的訪問方法相同。請看下面的例子:
?1function?ArgTest(){
?2???var?i,?s,?numargs?=?arguments.length;
?3???s?=?numargs;??
?4???if?(numargs?<?2)
?5??????s?+=?"?argument?was?passed?to?ArgTest.?It?was?";
?6???else
?7??????s?+=?"?arguments?were?passed?to?ArgTest.?They?were?"?;
?8???for?(i?=?0;?i?<?numargs;?i++)
?9??????{
10?????????s?+=?arguments[i]?+?"?";
11??????}

12???return(s);
13}

?? 我們知道每一個對象都有自己的屬性,arguments對象也不例外,首先arguments的訪問猶如Array對象一樣,用0到arguments.length-1來枚舉每一個元素。下面我們來看看callee屬性,返回正被執行的? Function?對象,也就是所指定的? Function?對象的正文。 callee?屬性是? arguments?對象的一個成員,僅當相關函數正在執行時才可用。 callee?屬性的初始值就是正被執行的? Function?對象,這允許匿名的 遞歸函數
1function?factorial(n){
2??if?(n?<=?0)
3??return?1;
4??else
5????return?n?*?arguments.callee(n?-?1)
6}

7print(factorial(3));
8 ??
? 到這里基本上把arguments對象給講完了,不知還有其他的東西嗎?其實很多東西我們都已經很熟悉了,除了上述的callee屬性外,其他的我們都時不時在應用他們。OK,今天的對象學習就到這里了,明天要看的對象將是Boolean對象。

總結

以上是生活随笔為你收集整理的JS入门之arguments对象的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。