You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在EJS中使用JavaScript变量过滤数组?

问题:通过JavaScript的username变量过滤users数组

服务端代码

var users = data.filter(u => u.id.startsWith('user_')).map(u => u.value);
// 输出示例:[{"username": "arin2115", "someotherdata": "someotherdata"}, {"username": "tesla", "someotherdata": "someotherdata"}]

return res.render('admin/users', {users: users});

原客户端代码(无法生效)

<script>
  var someelement = document.getElementById("someelement");

  var username = "arin2115";

  var user = `<%-JSON.stringify(users.filter(x => x.username == "${username}")[0])%>`;

  someelement.innerHTML = user.someotherdata;
</script>

尝试了多种类似写法都无法实现需求。

可行解决方案(来自@AngYC)

var username = "arin2115";

var users = <%-JSON.stringify(users)%>;

var user = users.find(x => x.username == username);

感谢@AngYC的解决方案。

内容的提问来源于stack exchange,提问作者Karciello YT

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 16:52:01