Js 中對 Json 數組的常用操作

我們首先定義一個json數組對象如下:

複製代碼
var persons = [
    {name: "tina", age: 14},
    {name: "timo", age: 15},
    {name: "lily", age: 16},
    {name: "lucy", age: 16}
]
複製代碼

 

一. 根據對象屬性值得到相應對象

複製代碼
//1. 獲取 name 等於 lily 的對象
var lily = persons.filter((p) => {
    return p.name == "lily";
});
console.log(lily); //打印結果 [{name: "lily", age: 16}]



//注:filter()方法返回的是一個數組
var twins = persons.filter((p) => {
    return p.age == 16;
});
console.log(twins); //打印結果 [{name: "lily", age: 16},{name: "lucy", age: 16}]
複製代碼

 

二. 刪除其中一個對象

複製代碼
//刪除 name 等於 tina 的對象,利用splice()方法

//1. 首先我們要得到這個對象
var tina = persons.filter((p) => {
    return p.name == "tina";
});

//2. 其次得到這個對象在數組中對應的索引
var index = persons.indexOf(tina[0]);

//3. 如果存在則將其刪除,index > -1 代表存在
index > -1 && persons.splice(index, 1);

console.log(persons);
//打印結果 [{name: "timo", age: 15}, {name: "lily", age: 16}, {name: "lucy", age: 16}]
複製代碼

 

三. 修改其中一個對象的屬性值

複製代碼
//將 name 等於 timo 的 age 修改爲 20

//1. 得到 timo 對象
var timo = persons.filter((p) => {
    return p.name == "timo";
});

//2. 修改age
timo[0].age = 20;
複製代碼

 

四. 往數組中添加一個對象

//這個最簡單了
persons.push({name: "similar", age: 18});

 

 ——注: 以上的所有操作都會對原數組產生直接影響。

發佈了2 篇原創文章 · 獲贊 31 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章