从JSON.stringify中提取数据

时间:2015-03-22 00:17:38

标签: javascript json object stringify

我从JSON.stringify收到的数据看起来像这样。

 {"action":"deleted","data":{"latitude":9,"longititude":8,"_type":"locationcurrent","id":49,"user":"7"}}

但我似乎无法获取对象内部的数据。主要是我想要操作的值,“已删除”以及我的数据的值,例如id:“49”。但是我在使用这个等式尝试获取数据时遇到了问题。

 function replacer(key, value) {
            if (typeof value === "string") {
                return value;
            }
            return undefined;
        }

        var jsonString = JSON.stringify(message, replacer);
        console.log(jsonString);

我从这里得到的是,

 data:{}

1 个答案:

答案 0 :(得分:2)

您的问题是传递给value的第一个replacer是对象本身。您可以将此对象替换为undefined,因为它不属于string类型。

你需要改变它:

function replacer(key, value) {
    if ( key === '' || typeof value === "string") {
        return value;
    }
    return undefined;
}

但正如Phatjam98所说,以这种方式筛选出一个值没有多大意义。