从 JSON.stringify 中提取数据
Extracting data from JSON.stringify
我从 JSON.stringify 收到的数据如下所示。
{"action":"deleted","data":{"latitude":9,"longititude":8,"_type":"locationcurrent","id":49,"user":"7"}}
但我似乎无法获取对象内部的数据。主要是我想要操作的值 "deleted" 和我的数据的值,例如 id:"49"。但是我在使用这个方程式尝试获取数据时遇到了问题。
function replacer(key, value) {
if (typeof value === "string") {
return value;
}
return undefined;
}
var jsonString = JSON.stringify(message, replacer);
console.log(jsonString);
我从这里得到的只是,
data:{}
您的问题是传递给 replacer
的第一个 value
是对象本身。您将此对象替换为 undefined
,因为它不是 string
.
类型
你需要这样改变它:
function replacer(key, value) {
if ( key === '' || typeof value === "string") {
return value;
}
return undefined;
}
但是正如Phatjam98所说,那样过滤掉一个值意义不大。
我从 JSON.stringify 收到的数据如下所示。
{"action":"deleted","data":{"latitude":9,"longititude":8,"_type":"locationcurrent","id":49,"user":"7"}}
但我似乎无法获取对象内部的数据。主要是我想要操作的值 "deleted" 和我的数据的值,例如 id:"49"。但是我在使用这个方程式尝试获取数据时遇到了问题。
function replacer(key, value) {
if (typeof value === "string") {
return value;
}
return undefined;
}
var jsonString = JSON.stringify(message, replacer);
console.log(jsonString);
我从这里得到的只是,
data:{}
您的问题是传递给 replacer
的第一个 value
是对象本身。您将此对象替换为 undefined
,因为它不是 string
.
你需要这样改变它:
function replacer(key, value) {
if ( key === '' || typeof value === "string") {
return value;
}
return undefined;
}
但是正如Phatjam98所说,那样过滤掉一个值意义不大。