在字符串中或者在数组中判断是否有重复记录

问题:
前两天因为需求的问题,页面的一个文本框内的内容需要添加多条记录。
但是这些记录在后台又要分批的保存。
这样就需要我把文本中的内容取出来,在前台做一个校验,如果其中有重复的记录,给出一个提示信息。
下面给出三种解决方案:
方法一:

  var ary = new Array("111","22","33","111");

  var s = ary.join(",")+",";

  for(var i=0;i

  {

  if(s.replace(ary[i]+",","").indexOf(ary[i]+",")>-1)

  {

  alert("有重复!");

  }

  }

  方法二:

  var ary = new Array("111","22","33","111");

  var nary=ary.sort();

  for(var i=0;i

  {if (nary[i]==nary[i+1])

  {alert("重复内容:"+nary[i]);}

  }

  方法三:

  var hash = {};

  for(var i in arr) {

  if(hash[arr[i]])

  return true;

  hash[arr[i]] = true;

  }

  return false;
[b]我的实现方式,采用第一种:[/b]
var s = rn.join(",")+",";
for(var i = 0;i<rn.length; i++){
if(s.replace(rn[i]+",","").indexOf(rn[i]+",")>-1)
  {
   alert("填写内容重复!");
return;
  }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值