JSON - 显示值并添加新的一行

时间:2014-10-24 12:56:49

标签: javascript json

如何显示"名称" id 12的值?以及如何为永恒的json添加另一个新用户(不保存.json文件)并显示最终结果?

var json = {
    "users": [
        {"id": 322, "name": "Ivan"},
        {"id": 12, "name": "Vanya"}
    ]
};

var str = JSON.stringify(json);

console.log(str.users.name); // ??

4 个答案:

答案 0 :(得分:0)

var str=JSON.parse(json);
console.log(str.users[0].name); //Ivan will be output

答案 1 :(得分:0)

JSON.stringify()是一个函数,它接受一个值并返回它的JSON等价物,这是一个字符串。你的json变量是一个javascript对象,而不是一个JSON字符串。如果你想添加另一个用户,你只需要使用json [" users"]。push({id:44,name:" Antoni"});然后,您可以使用JSON.stringingfy()转换为JSON字符串进行存储,或使用JSON.parse()转换回来。

答案 2 :(得分:0)

希望这可以帮助你:

var json = {
    "users": [
        {"id": 322, "name": "Ivan"},
        {"id": 12, "name": "Vanya"}
    ]
};

//To print name value of id 12
for (var 1=0; i< json.users.length; i+=1){
    if(json.users[i].id===12){
      console.log(json.users[i].name); //Prints name value of user id 12
      break;
    }
}

//To Add new user
json.users.push({"id": 143, "name": "Adam"})

答案 3 :(得分:0)

显示具有任何特定ID的名称 -

for(var i in json.users){
    if(json.users[i].id==12)
        console.log(json.users[i].name);
}

添加新的obj -

var newobj={"id" : 3, "name": "MyName"};
json.users.push(newobj);
console.log(json.users);

演示 - http://jsfiddle.net/m0hxfs66/

检查控制台中的输出