簡體   English   中英

對象空數組上的Javascript推送列表

[英]Javascript push list on object empty array

我想從對象中獲取標簽列表

這是完整的代碼和數據:

$(document).ready(function() {

obj = 

{
    "category":[
    {

    "id":"8098",
        "tags":{
            "411":"something",
            "414":"something else"
        }
    }

]

};


var tagList = [];

for (var index in obj) {

  for (var indexSub in obj[index].tags) {

       blah = (obj[index].tags[indexSub]);
       tagList.push(blah);
   }
}

console.log(tagList);



});

這是jsFiddle的鏈接

問題是taglist返回一個空數組。

我怎樣才能解決這個問題?

你的

    for (var index in obj) {

        for (var indexSub in obj[index].tags) {

            blah = (obj[index].tags[indexSub]);
            tagList.push(blah);
        }
    }

獲取屬於該categorytags新功能

for (var index in obj) {
  for (var indexSub in obj[index]) {
     blah = (obj[index][indexSub].tags);
     tagList.push(blah);
  }
} 

請參閱訪問屬性的方式的不同之處

 obj = { "category": [ { "id": "8098", "tags": { "411": "something", "414": "something else" } } ] }; var tagList = []; for (var index in obj) { for (var indexSub in obj[index]) { tagList = (obj[index][indexSub].tags); // tagList.push(blah); } } console.log(tagList); 

你需要迭代類別,然后獲取標簽的鍵和值,像這樣的一些。

 var obj = { "category":[ { "id":"8098", "tags":{ "411":"something", "414":"something else" } } ]}; var tagList = []; obj.category.forEach( o =>{ for (property in o.tags){ tagList.push(property + ':'+ o.tags[property]); }; }); console.log(tagList); 

這是你的jsfiddle

obj = 
{
   "category":[
          {
             "id":"8098",
             "tags":{
                 "411":"something",
                 "414":"something else"
             }
          }

   ]
};
var tagList = [];
for (key in obj) {
    for(subKey in obj[key]){
            var myTags=obj[key][subKey].tags;
            for(tag in myTags){
                 tagList.push(tag);
            }
    }

}
console.log(tagList);

您可以使用Array#reduceObject.keys with Array#map Object.keys迭代並獲取所有標記。

 var obj = { "category": [{ "id": "8098", "tags": { "411": "something", "414": "something else" } }] }, tagList = obj.category.reduce(function (r, a) { return r.concat(Object.keys(a.tags).map(function (t) { return a.tags[t]; })); }, []); console.log(tagList); 

暫無
暫無

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

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