まず、引用されたコードはJSONではありません。あなたのコードはJavaScriptオブジェクトのリテラル表記です。JSONは、解析を容易にするために設計されたサブセットです。
コードは、オブジェクト(定義data
配列(を含む)items
オブジェクトの)(各id
、name
などをtype
)。
これにはjQueryは必要ありません。JavaScriptだけが必要です。
アイテムの追加:
data.items.push(
{id: "7", name: "Douglas Adams", type: "comedy"}
);
それは終わりに追加します。途中で追加する場合は、以下を参照してください。
アイテムの削除:
いくつかの方法があります。このsplice
方法は最も用途が広いです:
data.items.splice(1, 3);
splice
元の配列を変更し、削除したアイテムの配列を返します。
途中で追加:
splice
実際には、追加と削除の両方を行います。splice
メソッドのシグネチャは次のとおりです。
removed_items = arrayObject.splice(index, num_to_remove[, add1[, add2[, ...]]]);
index
-変更を開始するインデックス
num_to_remove
-そのインデックスから始めて、この多くのエントリを削除します
addN
-...そしてこれらの要素を挿入します
したがって、次のように3番目の位置にアイテムを追加できます。
data.items.splice(2, 0,
{id: "7", name: "Douglas Adams", type: "comedy"}
);
つまり、インデックス2から始めて、ゼロのアイテムを削除してから、次のアイテムを挿入します。結果は次のようになります。
var data = {items: [
{id: "1", name: "Snatch", type: "crime"},
{id: "2", name: "Witches of Eastwick", type: "comedy"},
{id: "7", name: "Douglas Adams", type: "comedy"},
{id: "3", name: "X-Men", type: "action"},
{id: "4", name: "Ordinary People", type: "drama"},
{id: "5", name: "Billy Elliot", type: "drama"},
{id: "6", name: "Toy Story", type: "children"}
]};
いくつかを削除して、一度に追加することができます。
data.items.splice(1, 3,
{id: "7", name: "Douglas Adams", type: "comedy"},
{id: "8", name: "Dick Francis", type: "mystery"}
);
...つまり、インデックス1から始めて、3つのエントリを削除してから、これら2つのエントリを追加します。その結果:
var data = {items: [
{id: "1", name: "Snatch", type: "crime"},
{id: "7", name: "Douglas Adams", type: "comedy"},
{id: "8", name: "Dick Francis", type: "mystery"},
{id: "4", name: "Ordinary People", type: "drama"},
{id: "5", name: "Billy Elliot", type: "drama"},
{id: "6", name: "Toy Story", type: "children"}
]};