Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/459.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何解决未定义属性的node.js错误?_Javascript_Node.js_Mongodb_Express - Fatal编程技术网

Javascript 如何解决未定义属性的node.js错误?

Javascript 如何解决未定义属性的node.js错误?,javascript,node.js,mongodb,express,Javascript,Node.js,Mongodb,Express,我有这个错误消息 无法读取未定义的属性“title” 当我使用posts.forEach进行遍历时,它工作得很好。但是 当与for循环一起使用时,它停止工作。 你能帮忙吗 这是我的密码 <section class="forum"> <ul class="pages"> <% for (var i = 1; i <= Math.ceil(posts.length / 3); i++) { %> <li><

我有这个错误消息

无法读取未定义的属性“title”

当我使用posts.forEach进行遍历时,它工作得很好。但是 当与for循环一起使用时,它停止工作。 你能帮忙吗

这是我的密码

<section class="forum">
<ul class="pages">
    <% for (var i = 1; i <= Math.ceil(posts.length / 3); i++) { %>

            <li><a href="#<%=i%>"><%= i %></a></li>

    <% } %>
    <% var pages = i %>

</ul>
    <div class="tabbedPages">
        <div class="tabbedPage">

    <% for (var i = 1; i <= pages; i++) { %>
        <div class="page" id="<%=i%>">
                <table>
                    <tr>
                        <th>Title</th>
                        <th>Replies</th>
                        <th>Last Message</th>
                    </tr>
                <% for (var j = (i - 1) * 3; j < (i * 3) ; j++){ %>
                    <tr>
                        <td>

                            <h2><%= posts[j].title %></h2>
                            <h2><%= posts[j].author %>, 
                            <% var diff = posts[j].date - Date.now %>
                            <% var msec = diff 
                                var dd = Math.floor(msec / 1000 / 60 / 60 / 24);
                                msec -= dd * 100 * 60 * 24;
                                var hh = Math.floor(msec / 1000 / 60 / 60);
                                msec -= hh * 1000 * 60 * 60;
                                var mm = Math.floor(msec / 1000 / 60);
                                msec -= mm * 1000 * 60;
                                var ss = Math.floor(msec / 1000);
                                msec -= ss * 1000;
                            %>
                            <% if (dd >= 1) { %>
                                <%= dd %> days ago 
                            <% } else if (hh >= 1) { %>
                                <%= hh %> hours ago  
                            <% } else if (mm >= 2) { %>
                                <%= mm %> minutes ago 
                            <% } else if (mm == 1) { %>
                                1 minute ago
                            <% } else { %>
                                Moments ago
                            <% } %>

                            </h2>
                        </td>
                        <td>
                            <h2>Replies: <%= posts[j].posts.length%></h2>



                        </td>
                        <td>
                            <h2>
                                <% if (posts[j].posts.length == 0 ) { %>
                                    Not Available Yet
                                <% } else { %>
                                <%= posts[j].posts[posts[j].posts.length - 1].author %>
                                <% } %>
                                </h2>
                            <h2>
                            <% var diff = posts[j].date - Date.now %>
                            <% var msec = diff
                                var dd = Math.floor(msec / 1000 / 60 / 60 / 24);
                                msec -= dd * 100 * 60 * 24;
                                var hh = Math.floor(msec / 1000 / 60 / 60);
                                msec -= hh * 1000 * 60 * 60;
                                var mm = Math.floor(msec / 1000 / 60);
                                msec -= mm * 1000 * 60;
                                var ss = Math.floor(msec / 1000);
                                msec -= ss * 1000;
                            %>
                            <% if (dd >= 1) { %>
                                <%= dd %> days ago 
                            <% } else if (hh >= 1) { %>
                                <%= hh %> hours ago  
                            <% } else if (mm >= 2) { %>
                                <%= mm %> minutes ago 
                            <% } else if (mm == 1) { %>
                                1 minute ago
                            <% } else { %>
                                Moments ago
                            <% } %>
                            </h2>
                        </td>

                    </tr>

            <% } %>

            </table>

    <% } %>
</section>

    几天前 = 1) { %> 几小时前 = 2) { %> 几分钟前 一分钟前 刚才 答复: 还没有 = 1) { %> 几天前 = 1) { %> 几小时前 = 2) { %> 几分钟前 一分钟前 刚才

你能告诉我这个代码到底出了什么问题吗?

你希望每页有3篇文章,但最后一页也可能有1到2篇文章。因此你需要添加另一个检查:

<% for (var j = (i - 1) * 3; j < (i * 3) && j < posts.length ; j++){ %>

您希望每页有3篇文章,但最后一页也可能有1或2篇文章。因此,您需要添加另一项检查:

<% for (var j = (i - 1) * 3; j < (i * 3) && j < posts.length ; j++){ %>


在某个时刻索引j
发布[j]。没有找到title
,但我不理解这里的for逻辑:
for(var j=(i-1)*3;j<(i*3);j++){
在某个时刻索引j
发布[j]。title
没有找到,但我不理解这里的for逻辑:
for(var j=(i-1)*3;j<(i*3);j++){
我需要像你这样的人来做我的主人。你刚刚启发了我的生活。你能做我的绝地大师并给我指路吗?@Nodesayan在网站上提问可能会对你有更大的帮助……而且别忘了给好帖子投赞成票,给不好的帖子投反对票,并把最好的答案记下来!我需要像你这样的人来做我的主人。你已经做到了st启发了我的生活。你能成为我的绝地大师并给我指路吗?@Nodesayan在网站上提问可能会对你有更多帮助…也别忘了对好帖子投赞成票,对坏帖子投反对票,并将最好的答案标记为已接受!