JSON.parse使用reviver函数 [英] JSON.parse using reviver function

查看:555
本文介绍了JSON.parse使用reviver函数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

如何使用JSON.parse reviver方法编辑某个值。
我只想编辑声明为lastname的每个键,然后返回新值。

How to use JSON.parse reviver method to edit a certain value. I just want to edit every key which is declared as lastname and than return the new value.

var myObj = new Object();
myObj.firstname = "mike";
myObj.lastname = "smith";

var jsonString = JSON.stringify(myObj);
var jsonObj = JSON.parse(jsonString, dataReviver);

function dataReviver(key, value)
{
    if(key == 'lastname')
    {
        var newLastname = "test";
        return newLastname;
    }
}


推荐答案

之后检查特殊情况,您只需要默认传回未修改的值:

After checking for the special case(s), you simply need to pass back unmodified values by default:

var myObj = new Object();
myObj.firstname = "mike";
myObj.lastname = "smith";

var jsonString = JSON.stringify(myObj);
var jsonObj = JSON.parse(jsonString, dataReviver);

function dataReviver(key, value)
{ 
    if(key == 'lastname')
    {
        var newLastname = "test";
        return newLastname;
    }

  return value;  // < here is where un-modified key/value pass though

}

JSON.stringify(jsonObj )// "{"firstname":"mike","lastname":"test"}" 

这篇关于JSON.parse使用reviver函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆