javascript - 如何检查未命名函数的返回
问题描述
我做了下面的代码:
mp.events.addCommand("admin", (player, targetPlayer, targetAdminLevel) => {
mp.players.forEach((targetPlayer2) => {
if (targetPlayer2 === targetPlayer) return true;
else return false;
});
try {
if (player.adminLevel < 8) throw "Error 1.";
if (!targetPlayer) throw "Error 2.";
if (player.adminLevel <= targetAdminLevel) throw "Error 3.";
//if (functionAbove = false) code
}
});
我想知道如何检查函数 mp.players.forEach 是真还是假,所以我可以将它添加到 try 语句中。谢谢。
我正在尝试检查是否有在线玩家在命令的第二个参数中输入了名称。示例:/admin playerName。如果存在,则返回true并设置他的adminLevel;如果不是,则返回 false。
我正在使用的功能:https ://wiki.rage.mp/index.php?title=Pool::forEach
解决方案
使用 .some、.filter、.find 代替 forEach。如果您要返回给定的内容:
array.some(obj=><condition>) //return boolean
array.filter(obj=><condition>) //return array with all the elements which fulfills condition
array.find(obj=><condition>) //return element
推荐阅读
- java - 三元运算符如何使用 3 个操作数?
- css - 使用 CSS 对齐引导跨度
- python - 如何删除特定于每个时间戳的异常值?
- javascript - 将点击处理程序传递给角度组件“正确的方式”
- kubernetes - 在我使用 helm Charts 安装 k8s 后,LoadBalancer 'EXTERNAL IP" 处于挂起状态
- android - 执行 eSIM 交换
- python - model_dir 属性未使用 Python Sagemaker SDK 将模型发送到 S3 存储桶
- php - PHP在第一个查询中获取最后一个插入ID并在第二个多行查询中执行它
- protocol-buffers - 在 gRPC/proto3 中设置 oneof 请求的更有效方法
- c++ - 在 vscode 中运行时无法暂停或设置断点