私は既に機能しているコードをいくつか持っていますが、オブジェクト構造を変更する必要があります。ここで 変更されたオブジェクトを読み込むためのJavaScript変更コード
は、(元のオブジェクトデータとの)作業コードです:obj = {
"category": [
{
"id": "1",
"category": "1",
"tags": {
"483": "tag1",
"484": "tag2"
}
},
{
"id": "2",
"category": "1",
"tags": {
"483": "tag1",
"484": "tag2"
}
},
{
"id": "3",
"category": "2",
"tags": {
"483": "tag1",
"484": "tag2"
}
},
{
"id": "4",
"category": "2",
"tags": {
"483": "tag1",
"484": "tag2"
}
},
{
"id": "5",
"category": "3",
"tags": {
"483": "tag1",
"484": "tag2"
}
},
]
}
var results = [ ];
for (var i = 0; i < obj.category.length; i++) {
$.each(obj.category[i].tags, function(key, value) {
results.push(value);
});
}
var uniqueNames = [];
$.each(results, function(i, el){
if($.inArray(el, uniqueNames) === -1) uniqueNames.push(el);
});
console.log(uniqueNames);
私は今、このような構造のように見えるようにオブジェクトを変更する必要があり
:だから
obj = {
"id": "1",
"category": "1",
"tags": {
"483": "tag1",
"484": "tag2"
}
}
基本的にカテゴリが取り出されています。
新しいオブジェクト構造を使用するにはどうすればよいですか?
注:コードは、すべてのタグ名が利用可能に取得することになっているし、重複を削除し、最終的に配列
変更唯一のことは、あなたがobj.category' 'をループする必要はありませんであるように見えます。あなた自身で何か試しましたか? –
少なくとも、明確にする:私たちに入力オブジェクトと出力として期待するものを与える –
問題を示すjsfiddleリンクを追加しました –