如何从反应中的json数据获取特定值
我在控制台中发现错误,而我试图从json数据中获取特定值。这是错误:如何从反应中的json数据获取特定值
'Uncaught TypeError: Cannot read property 'processen_id' of undefined'
这里是我的代码:
$.get("/getProces", function (data) {
if (data.error) {
} else {
for (var i = 0; i <= data.message.length; i++) {
var obj = data.message[i]
console.log(obj.processen_id)
}
}
})
}
这是我所得到的,当我登录(数据):
你有一个错误您的代码在for循环中
<= instead of <
$.get("/getProces", function (data) {
if (data.error) {
} else {
for (var i = 0; i < data.message.length; i++) {
var obj = data.message[i]
console.log(obj.processen_id)
}
}
})
}
谢谢,它帮助^^ – AndyAsmo97
错误消息表示obj
未定义。这意味着,data.message[i]
得到一个未定义的值。问题在于循环。你会得到一个大于数组的i
。更改<=
到<
:
for (var i = 0; i < data.message.length; i++) {
var obj = data.message[i]
console.log(obj.processen_id)
}
谢谢,它帮助^^ – AndyAsmo97
指数超出范围:for (var i = 0; i <= data.message.length; i++) {
应该for (var i = 0; i < data.message.length; i++) {
代替。
您还可以优化你的代码是这样的:
$
.get("/getProces")
.then((res) => res.error ? Promise.reject(res) : Promise.resolve(res))
.then((data) => {
for (var i = 0; i < data.message.length; i++) {
var obj = data.message[i]
console.log(obj.processen_id)
}
})
您是否尝试过记录'data'和'data.message'来看看里面有什么?很明显,'message [i]'不存在 – atomrc