从JSON对象(Javascript)中提取值?
如何在Javascript中提取pid的值从JSON对象(Javascript)中提取值?,javascript,json,Javascript,Json,如何在Javascript中提取pid的值 { "payments":[ { "pid":"XXX", "valid":"1" } ] } 这不是有效的JSON对象 如果付款是一个数组,则可以使用myObj.payments[0].pid检索pid 如果payments是一个对象,那么您可以使用:myObj.payments.pid检索pid您的json不是有效的json,您的json应该如下所示 Object={ pay
{
"payments":[
{
"pid":"XXX",
"valid":"1"
}
]
}
这不是有效的JSON对象 如果付款是一个数组,则可以使用myObj.payments[0].pid检索pid
如果payments是一个对象,那么您可以使用:myObj.payments.pid检索pid您的json不是有效的json,您的json应该如下所示
Object={
payments: [{pid: "XXX",valid: 1},{pid: "XXX",valid: 1}]
}
一旦你的json变成这样
Object={
payments: [{pid: "XXX",valid: 1},{pid: "XXX",valid: 1}]
}
然后,您可以将json读取为
Object.payments[0].pid
这将为您提供pid值
var a = {
"payments":[
{"pid":"XXX"},{"valid":"1"}]
}
console.log(a.payments[0]);
如果JSON的数组中有多个付款,您可以使用:
for(var i = 0; i < myObject.payments.length; i++){
myObject.payments[i].pid
}
使用JSON.stringifyhttpResponse.data时,基本上是将httpResponse.data转换为具有有效JSON符号的字符串。这意味着,httpResponse.data已经是可以从中获取pid的有效对象
因此:
httpResponse是一个对象
httpResponse.data是httpResponse对象中的另一个对象
httpResponse.data.payments是httpResponse.data对象中的一个数组
httpResponse.data.payments[0]是httpResponse.data.payments数组的第一个子对象
httpResponse.data.payments[0].pid是您要查找的
因此:
是否有此对象的名称,或者这是浏览器在请求页面时打印的名称?不确定。这就是我执行以下console.logJSON.stringifyhttpResponse.data时记录的内容;好的,现在我可以回答了是的,付款是一个数组。哇!你完全正确。实际上,我正在使用parse.com发出http请求,我刚刚看到了以下内容:将解析后的响应体数据作为JavaScript对象。这仅在响应内容类型为application/x-www-form-urlencoded或application/json时可用。谢谢你,阿曼!
console.log(httpResponse.data.payments[0].pid); //prints "XXX"