gpt4 book ai didi

node.js - 类型错误 : Cannot read property 'length' of undefined?

转载 作者:太空宇宙 更新时间:2023-11-03 23:34:05 24 4
gpt4 key购买 nike

我收到“TypeError:无法读取未定义的属性‘长度’?”当我尝试从文件中保存的联系人中获取特定联系人(提供电话号码)时,出现错误。

exports.query = function(number) {
var json_result = JSON.parse(read_json_file());
console.log(json_result);
var result = json_result.result;
for (var i = 0; i < result.length; i++) {
var contact = result[i];
if (contact.primarycontactnumber === number) {
return contact;
}
}
return null;
};

我将上面的代码称为:

  app.get('/contacts/:number', function(request, response) {
response.setHeader('content-type', 'application/json');
response.end(JSON.stringify(contacts.query(request.params.number)));
});

我的read_json_file方法的代码是:

function read_json_file() {
var file = './data/contacts.json';
return fs.readFileSync(file);
}

最佳答案

我认为 json_result 没有属性 result。如果它适合您的函数逻辑,您可以防御性地设置 result 变量,如下所示:

var result = json_result.result || [];

如果 json_result.result 未定义(或评估为 false),什么会将空数组分配给 result 变量。

关于node.js - 类型错误 : Cannot read property 'length' of undefined?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34706630/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com