定义这个对象会导致另一个对象未定义吗?
我有这样的代码:
sys.puts(JSON.stringify(data[0].name));
var userData = {
name: data[0].name,
screenname: data[0].screen_name,
id: data[0].id,
url: data[0].url,
description: data[0].description
}
当我注释掉 userData 对象的创建时,一切正常,这意味着它将该值正确写入控制台。当我把它放回去时,我收到此错误:
sys.puts(JSON.stringify(data[0].name));
^
TypeError: Cannot read property 'name' of undefined
有什么想法为什么会发生这种情况吗?这些都在同一个函数内。
I have this code:
sys.puts(JSON.stringify(data[0].name));
var userData = {
name: data[0].name,
screenname: data[0].screen_name,
id: data[0].id,
url: data[0].url,
description: data[0].description
}
When I comment out the creation of the userData object everything works fine, meaning it writes that value to the console correctly. When I put it back in I get this error:
sys.puts(JSON.stringify(data[0].name));
^
TypeError: Cannot read property 'name' of undefined
Any ideas why this would be happening? This is all within the same function.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
使用 guard 运算符 验证对象:
在访问对象的属性之前, 另一种方法是使用 try/catch 块:
参考
Use the guard operator to validate the object before accessing its properties:
As an alternative use a try/catch block:
References