まず、引用されたコードはJSONではありません。コードは JavaScript オブジェクト リテラル表記です。JSONは、解析を容易にするために設計された JSON のサブセットです。
コードは、オブジェクトdata
の配列 ( ) を含むオブジェクト ( ) を定義しitems
ます (それぞれにid
、name
、および がありtype
ます)。
これには jQuery は必要ありません。JavaScript だけです。
アイテムの追加:
data.items.push(
{id: "7", name: "Douglas Adams", type: "comedy"}
);
それは最後に追加されます。途中で追加する方法については、以下を参照してください。
アイテムの削除:
いくつかの方法があります。このsplice
方法は最も汎用性があります。
data.items.splice(1, 3); // Removes three items starting with the 2nd,
// ("Witches of Eastwick", "X-Men", "Ordinary People")
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 から始めて、0 個のアイテムを削除してから、この次のアイテムを挿入します。結果は次のようになります。
var data = {items: [
{id: "1", name: "Snatch", type: "crime"},
{id: "2", name: "Witches of Eastwick", type: "comedy"},
{id: "7", name: "Douglas Adams", type: "comedy"}, // <== The new item
{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"}
]};