如何使用jquery在数组中设置唯一值

时间:2018-02-01 05:28:13

标签: jquery arrays

我想在数组中推送一个唯一值,我正在使用jquery

var otNotesTimeIntrArray = new Array();
$("#otNoteFluids").on('change',function() {
   var otNotesTimeIntr = $("#otNotesTimeIntr").val();
   otNotesTimeIntrArray.push(otNotesTimeIntr);
 });

otNotesTimeIntr由时间间隔组成。 例如:上午10:15,上午10:45 ......

如果已经存在10:15 AM,我不希望它推入阵列..

2 个答案:

答案 0 :(得分:5)

使用可以使用.indexOf来检查数组中是否已存在值

var otNotesTimeIntrArray = new Array();
$("#otNoteFluids").on('change',function() {
   var otNotesTimeIntr = $("#otNotesTimeIntr").val();

   //Use .indexOf before pusing into array
   if(otNotesTimeIntrArray.indexOf(otNotesTimeIntr)==-1)
      otNotesTimeIntrArray.push(otNotesTimeIntr);

});

答案 1 :(得分:3)

您可以使用array#includes检查数组中是否存在值。

var otNotesTimeIntrArray = new Array();
$("#otNoteFluids").on('change',function() {
   var otNotesTimeIntr = $("#otNotesTimeIntr").val();
   if(!otNotesTimeIntrArray.includes(otNotesTimeIntr))
     otNotesTimeIntrArray.push(otNotesTimeIntr);
 });