簡體   English   中英

初始化一個javascript數組

[英]Initializing a javascript array

還有另一種(更漂亮的)初始化這個Javascript數組的方法嗎?

    var counter = [];
    counter["A"] = 0; 
    counter["B"] = 0;
    counter["C"] = 0;
    counter["D"] = 0;
    counter["E"] = 0;
    counter["F"] = 0;
    counter["G"] = 0;

答:這不起作用,或者至少不是你希望它的方式。 當您最有可能尋找的是哈希時,您初始化了一個數組。 除非您將第一行更改為counter = {};否則counter仍會返回[]並且長度為0 counter = {}; 屬性將存在,​​但使用[]來存儲鍵值對是一個令人困惑的用法。

B:

var counter = {A: 0, B: 0, C: 0, D: 0, E: 0, F: 0, G: 0};

使用對象文字而不是數組,如下所示:

var counter = {A:0,B:0,C:0}; // and so on

然后使用點表示法訪問屬性:

counter.A;  // 0

...或方括號表示法:

counter['A'];  // 0

您將主要使用數組屬性,盡管可以像往常一樣添加非數字屬性。

var counter={A:0,B:0,C:0,D:0,E:0,F:0,G:0};

使用對象更有意義:

    var counter = {
        A: 0, 
        B: 0, 
        C: 0, 
        D: 0, 
        E: 0, 
        F: 0, 
        G: 0
     };

如果你真的想要一個充滿零的數組,那么Array(5).fill(0)就可以了。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM