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

Discord.js v13.6.0中实现JSON文件用户ID移除的白名单移除指令

实现Discord.js v13.6.0的Unwhitelist指令

你的现有代码无法正常生效,核心问题是JSON里的users是数组类型,但你用了针对对象属性的delete操作,这对数组完全无效。以下是修正后的实现方案:

修正后的代码

if (message.content.startsWith(prefix + "unwhitelist")) {
  if (!args[0]) return message.edit(":x: **Veuillez mentionner quelqu'un**");
  let user = message.mentions.users.first() || client.users.cache.get(args[0]);
  if (!user) return message.edit(":x: **Veuillez mentionner quelqu'un**");

  // 过滤数组移除目标ID(无需检查是否存在)
  crow.users = crow.users.filter(userId => userId !== user.id);
  savecrow();
  message.edit(`\`${user.tag}\` n'est plus whitelist`);
}

关键说明

  • 数组不能用delete:delete只会把数组对应位置设为undefined,不会真正移除元素并调整数组长度。改用Array.filter()生成不包含目标ID的新数组,直接替换原数组即可。
  • 优化提示内容:用user.tag显示用户的完整标签(用户名+#后缀),比直接拼接用户对象更清晰友好。
  • 无需额外检查ID存在性:如果目标ID不在数组中,过滤后的数组和原数组一致,不影响保存和提示逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 03:15:35