Javascript 帕格多次打印相同的值

Javascript 帕格多次打印相同的值,javascript,node.js,pug,Javascript,Node.js,Pug,这是我的哈巴狗代码: html head style include ../../public/css/admin/admin.css body .main .yeniler-kutu each yeni, index in yeniler li(class="yeniler")= yeni script include ../../public/js/admin/a

这是我的哈巴狗代码:

html
  head
    style
        include ../../public/css/admin/admin.css
  body
    .main
      .yeniler-kutu
        each yeni, index in yeniler
          li(class="yeniler")= yeni 
    script
      include ../../public/js/admin/admin.js 
以下是我的后端javascript代码:

router.get("/index", async (req, res) =>
{
    try
    {
            const users = await User.find({});
            for(x=0; users[x]; x++)
            {
                if(users[x].gorev === "Menti" && !users[x].mentor)
                {
                    yenilerArr.push(users[x].name);
                }
            }
            res.status(200).send(pug.renderFile("./views/admin/admin.pug", 
            {
                yeniler: yenilerArr,
            })) 
    }
    catch(e)
    {
        res.status(400).send(e)
    }
})
问题是帕格多次显示同一列表元素。当我第一次加载页面时,它工作正常,只显示一次字符串,但当我重新加载页面时,我会看到重复的值。
例如,如果
yeniler
数组只包含一个名为
hello
的元素,它将显示字符串
hello
,但当我重新加载页面时,我会看到2个
hello
s。谢谢阅读。

我认为这里的语义有点错误:

for(x=0; users[x]; x++)
应该是:

for(x=0; users.length; x++)

看起来,
yenilerar
是在请求处理程序的范围之外定义的,因此它在请求之间保持不变,并起到全局变量的作用

它应该在请求处理程序中定义,在
for
循环之前的某个位置:

const yenilerArr = []

唯一可以保持页面刷新(甚至是硬刷新)的是缓存/状态或数据库。请确保您不修改db(f.e.模型推送),并且您的视图不使用任何类型的浏览器存储(本地等),谢谢。我在推。