這篇文章給大家分享的是有關(guān)javaScript中如何使用Arguments對象的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、做網(wǎng)站、五常網(wǎng)絡(luò)推廣、微信小程序定制開發(fā)、五常網(wǎng)絡(luò)營銷、五常企業(yè)策劃、五常品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營等,從售前售中售后,我們都將竭誠為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)為所有大學(xué)生創(chuàng)業(yè)者提供五常建站搭建服務(wù),24小時(shí)服務(wù)熱線:13518219792,官方網(wǎng)址:www.cdcxhl.com
1、搞清楚什么是arguments
“arguments 是一個(gè)對應(yīng)于傳遞給函數(shù)的參數(shù)的類數(shù)組對象。
arguments對象是所有(非箭頭)函數(shù)中都可用的局部變量。你可以使用arguments對象在函數(shù)中引用函數(shù)的參數(shù)。此對象包含傳遞給函數(shù)的每個(gè)參數(shù),第一個(gè)參數(shù)在索引0處。”
首先它是一個(gè)類數(shù)組對象,typeof arguments結(jié)果毫無疑問是"object",注意結(jié)果是字符串類型。接下來調(diào)用Object.prototype.toString.call(arguments),結(jié)果是從未見過的"[object Arguments]"。
2.轉(zhuǎn)換為數(shù)組
1.Array的silce方法
Array.prototype.slice.call(arguments)
2.Array.from
let re = Array.from(arguments)
3.拓展運(yùn)算符
let re = [...arguments]
3.從arguments到類數(shù)組
類數(shù)組必須有l(wèi)ength屬性,具有索引屬性,下面結(jié)合代碼說明:
let obj = { "0": 'a', "1": 'b', "2": 'c', length: 3, "push": Array.prototype.push, "splice": Array.prototype.splice } obj.push('d') console.log(obj)
結(jié)果為:
實(shí)際執(zhí)行過程相當(dāng)于:
obj[obj.length] = 'd'; obj.length++;
4.筆試題
var length = 10; function fn(){ console.log(this.length) } var obj = { length: 5, getF: function(fn) { fn(); arguments[0](); } } obj.getF(fn);
感謝各位的閱讀!關(guān)于javaScript中如何使用Arguments對象就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!