成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

javaScript中的Arguments對象

OpenDigg / 2900人閱讀

摘要:搞清楚什么是是一個對應于傳遞給函數(shù)的參數(shù)的類數(shù)組對象。對象是所有非箭頭函數(shù)中都可用的局部變量。首先它是一個類數(shù)組對象,結果毫無疑問是,注意結果是字符串類型。接下來調用,結果是從未見過的。第一次寫文章,希望對你們有點幫助。

1.搞清楚什么是arguments
“arguments 是一個對應于傳遞給函數(shù)的參數(shù)的類數(shù)組對象。
arguments對象是所有(非箭頭)函數(shù)中都可用的局部變量。你可以使用arguments對象在函數(shù)中引用函數(shù)的參數(shù)。此對象包含傳遞給函數(shù)的每個參數(shù),第一個參數(shù)在索引0處?!?/pre>

首先它是一個類數(shù)組對象,typeof arguments結果毫無疑問是"object",注意結果是字符串類型。接下來調用Object.prototype.toString.call(arguments),結果是從未見過的"[object Arguments]"。

2.轉換為數(shù)組

1.Array的silce方法

Array.prototype.slice.call(arguments)

2.Array.from

let re = Array.from(arguments)

3.拓展運算符

let re = [...arguments]
3.從arguments到類數(shù)組

類數(shù)組必須有l(wèi)ength屬性,具有索引屬性,下面結合代碼說明:

let obj = {

            "0": "a",

            "1": "b",

            "2": "c",

            length: 3,

            "push": Array.prototype.push,

            "splice": Array.prototype.splice

        }

obj.push("d")

console.log(obj) 

結果為:

實際執(zhí)行過程相當于:

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);

考察的是arguments和this指向問題,我答的5 1,真實結果為10 1。第一次寫文章,希望對你們有點幫助。

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://m.hztianpu.com/yun/102684.html

相關文章

  • JavaScript arguments 對象全面介紹

    摘要:事實上,滿足一定條件的對象都能被方法轉換成數(shù)組。繼承于的很大原因是不需要這四個方法。而在非嚴格模式下,兩個會互相影響。數(shù)組與類數(shù)組對象數(shù)組具有一個基本特征索引。這是一般對象所沒有的。是利用對象的鍵值對存取數(shù)據(jù),而卻是利用數(shù)組的索引。 1. 什么是 arguments MDN 上解釋: arguments 是一個類數(shù)組對象。代表傳給一個function的參數(shù)列表。 我們先用一個例子直觀了...

    HackerShell 評論0 收藏0
  • JavaScript arguments 對象詳解

    摘要:事實上,滿足一定條件的對象都能被方法轉換成數(shù)組。繼承于的很大原因是不需要這四個方法。而在非嚴格模式下,兩個會互相影響。數(shù)組與類數(shù)組對象數(shù)組具有一個基本特征索引。這是一般對象所沒有的。是利用對象的鍵值對存取數(shù)據(jù),而卻是利用數(shù)組的索引。 1. 什么是 arguments MDN?上解釋: arguments 是一個類數(shù)組對象。代表傳給一個function的參數(shù)列表。 我們先用一個例子直觀了...

    codergarden 評論0 收藏0
  • JavaScript中的執(zhí)行上下文和變量對象

    摘要:以上簡單總結了下對執(zhí)行上下文和變量對象的理解,主要在于記錄總結一下學習成果,目前文章的水平實在不敢談分享。 執(zhí)行上下文(Execution Context) 文章同步到github javaScript中的執(zhí)行上下文和變量對象 JavaScript代碼執(zhí)行的過程,包括編譯和執(zhí)行兩個階段,編譯就是通過詞法分析,構建抽象抽象語法樹,并編譯成機器識別的指令,在JavaScript代碼編譯階段...

    why_rookie 評論0 收藏0
  • 編寫高質量JavaScript代碼之使用函數(shù)

    摘要:構造函數(shù)調用使用操作符來調用函數(shù)則視其為構造函數(shù)。構造函數(shù)的主要職責是初始化該新對象。使用方法定義高階函數(shù)允許使用者給回調函數(shù)指定接收者。當給高階函數(shù)傳遞對象方法時,使用匿名函數(shù)在適當?shù)慕邮照呱险{用該方法。 參考書籍:《Effective JavaScript》 使用函數(shù) 理解函數(shù)調用、方法調用及構造函數(shù)之間的不同 函數(shù)、方法和構造函數(shù)是單個構造對象的三種不同的使用模式。 函數(shù)調用...

    yankeys 評論0 收藏0
  • JavaScript函數(shù)式編程(0):函數(shù)基礎 arguments、this、apply()、cal

    摘要:參數(shù)引用函數(shù)的上下文,函數(shù)上下文來自于等面向對象語言,中的依賴于函數(shù)聲明。沒有重載函數(shù)沒有簽名,因為其參數(shù)是由包含零或多個值的數(shù)組來表示的。這就是重載函數(shù)。重載函數(shù)常用來實現(xiàn)功能類似而所處理的數(shù)據(jù)類型不同的問題。 1 函數(shù)參數(shù) 函數(shù)的實參和形參個數(shù)可以不等,之所以會這樣,原因是 ECMAScript 中的參數(shù)在內部是用一個數(shù)組來表示的。函數(shù)接收到的始終都是這個數(shù)組,而不關心數(shù)組中包含哪...

    陳偉 評論0 收藏0

發(fā)表評論

0條評論

閱讀需要支付1元查看
<