限制某个键的值可以在JSON中出现的次数

时间:2017-04-18 21:31:51

标签: javascript arrays json key-value key-value-coding

我的JSON文件中有一个数组,如下所示:

{
 "commands": [
   {
     "user": "Rusty",
     "user_id": "83738373",
     "command_name": "TestCommand",
     "command_reply": "TestReply"
   }
 ] 
}

等等。我想限制某个用户(由user_id识别)到3个命令的命令数量。我知道我需要从循环遍历每个对象开始,但坚持如何完成下一个部分。

我希望它看起来与此相似:

for (let i = 0; i < arrayOfCommands.commands.length; i++) { 
  if (arrayOfCommands.commands.user_id appears more than 3 times) {
   return message.reply("You cannot make more than 3 commands.");
  }
}

2 个答案:

答案 0 :(得分:1)

您可以创建一个按用户ID存储命令数的对象。然后只需检查对象以查看给定用户是否有太多命令。

&#13;
&#13;
...
50        K           
50        L           
50        M           
650 rows selected. 
&#13;
&#13;
&#13;

答案 1 :(得分:0)

我创建了两个函数:一个用于返回一个简单的布尔值来检查是否已超出最大值而另一个用于执行错误消息。

InputStream resourceStream =  TestResource.class.getResourceAsStream("/resources/PUT_Request_ER.xml");