簡體   English   中英

在JavaScript中的另一個無密鑰數組中迭代無密鑰數組

[英]Iterate an keyless array inside another keyless array in javascript

我有一個看起來像這樣的API:

[
    [
        1,
        "__Default__"
    ],
    [
        7,
        "parent 1"
    ],
    [
        9,
        "parent 2"
    ],
    [
        17,
        "Parent 3"
    ],
    [
        18,
        "Parent 4"
    ]
]

現在,我試圖迭代所有此列表的值並將其填充到select2中,但是我在迭代第二級列表時遇到了麻煩。

下面是我的代碼:

var all_parent_json = $.ajax({
                type: "GET",
                url: "/api/content_parent/"+ project_data.id +"/?format=json",
                dataType: "application/json",
                async: false
            }).responseText;
            var all_parent = JSON.parse(all_parent_json);

            var parent_option_list = [];
            for (var x in all_parent){
                for (y in all_parent[x]){
                    //THIS IS WRONG
                    console.log(all_parent[x].[y])
                    console.log(y)
                parent_option_list.push({"id": all_parent[x].[0], "text": all_parent[x].[1]})
                }
            }

非常感謝任何幫助。

將all_parent [a]。[b]更改為all_parent [a] [b]

我不知道該怎么辦。 用於索引之間。 我認為您嘗試生成的代碼是這樣的:

for (x in all_parent) {
    for (y in all_parent[x]){ 
        console.log(all_parent[x][y]) }}

[x]和[y]之間的句點是語法錯誤。 因此,我認為您想像這樣建立清單:

parent_option_list.push({"id": all_parent[x][0], "text": all_parent[x][1]})

您可以輕松使用Array.map()

var parent_option_list = JSON.parse(all_parent_json).map(m => { return {id: m[0], text: m[1]}; });

暫無
暫無

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

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