gpt4 book ai didi

javascript - 跳过 if 语句和循环中未定义的值

转载 作者:行者123 更新时间:2023-12-03 02:52:12 28 4
gpt4 key购买 nike

我试图循环遍历所有用户的评论,但使用 if 语句查找特定值。问题是我的应用程序崩溃了,因为一些用户没有发表评论,因此我得到“无法读取‘收集’未定义的属性”。如何跳过 if 语句的未定义值?代码如下:

<% for(var i=0; i < users.length; i++) { %>
<tr>


<% if(users[i].comments.slice(-1)[0].collected !== 'At Reception') { %>

<td>Nothing in reception - well done!</td>

<% } else { %>



<td><%= users[i].studio %></td>
<td><%= users[i].name %></td>
<td><%= users[i].email %></td>
<td><%= users[i].username %></td>
<td><%= users[i].comments.slice(-1)[0].collected %></td>

<td><a class="btn btn-primary" href="/users/<%= users[i]._id %>">More Info</a></td>

<% } %>

最佳答案

首先使用以下代码行检查该属性是否可用于该对象:

yourObject.hasOwnProperty('collected')//如果存在则返回 true,如果不存在则返回 false。

if(yourObject.hasOwnProperty('collected')) {
// code here...
} else {
// catch here...
}

尝试阅读有关 Object.prototype.hasOwnProperty() 的更多信息

关于javascript - 跳过 if 语句和循环中未定义的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47804511/

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