热门标签 | HotTags
当前位置:  开发笔记 > 前端 > 正文

js去除重复字符串两种实现方法

js去除重复字符串在项目开发中很实用,接下来详细介绍实现方法,感兴趣的朋友可以参考下
方法一:
代码如下:

function checkRe(checkid) {

var id = window.parent.getQry("ctrid") + "_";

var values = window.parent.opener.document.getElementById(id + "txt_dept_name").value;
var keys = window.parent.opener.document.getElementById(id + "hf_ids").value;

var ary = checkid.value.split("|");
var newsValues = ary[0];
var newsKeys = ary[1];

if (checkid.checked) {
values = values + "," + newsValues;
keys = keys + "," + newsKeys;

}
else {
values = values.replace(new RegExp("," + newsValues), "");
keys = values.replace(new RegExp("," + newsKeys), "");

}

values = okd(values);
keys = okd(keys);

window.parent.opener.document.getElementById(id + "txt_dept_name").value = values;
window.parent.opener.document.getElementById(id + "hf_ids").value = keys;

return;

}
//转换成数组,去掉重复,再组合好。
function okd(str) {

var ary = str.split(",");
// 去重的算法
var json = {};
for (var i = 0; i
if (ary[i] != "") {

json["a" + ary[i]] = ary[i];
}
}

// 查看结果
var str2 = "";
for (var key in json) {
str2 += "," + json[key];
}

var s = str2.toString();

//去掉第一个逗号
if (s.substr(0, 1) == ',') {
s = s.substr(1);
}

return s;
}

function add_all() {
var ck = document.getElementsByTagName("input");
for (i = 0; i if (ck[i].type == "checkbox") {
ck[i].checked = true;
checkRe(ck[i]);

}
}

}

function del_all() {
var id = window.parent.getQry("ctrid") + "_";
window.parent.opener.document.getElementById(id + "txt_dept_name").value = "";
window.parent.opener.document.getElementById(id + "hf_ids").value = "";

var ck = document.getElementsByTagName("input");
for (i = 0; i if (ck[i].type == "checkbox") {
ck[i].checked = false;

}
}
}

代码如下:



方法二:
代码如下:

function filterRepeatStr(str){
var ar2 = str.split(",");
var array = new Array();
var j=0
for(var i=0;iif((array == "" || array.toString().match(new RegExp(ar2[i],"g")) == null)&&ar2[i]!=""){
array[j] =ar2[i];
array.sort();
j++;
}
}
return array.toString();
}

推荐阅读
  • 最近团队在部署DLP,作为一个技术人员对于黑盒看不到的地方还是充满了好奇心。多次咨询乙方人员DLP的算法原理是什么,他们都以商业秘密为由避而不谈,不得已只能自己查资料学习,于是有了下面的浅见。身为甲方,虽然不需要开发DLP产品,但是也有必要弄明白DLP基本的原理。俗话说工欲善其事必先利其器,只有在懂这个工具的原理之后才能更加灵活地使用这个工具,即使出现意外情况也能快速排错,越接近底层,越接近真相。根据DLP的实际用途,本文将DLP检测分为2部分,泄露关键字检测和近似重复文档检测。 ... [详细]
  • 使用Numpy实现无外部库依赖的双线性插值图像缩放
    本文介绍如何仅使用Numpy库,通过双线性插值方法实现图像的高效缩放,避免了对OpenCV等图像处理库的依赖。文中详细解释了算法原理,并提供了完整的代码示例。 ... [详细]
  • 探讨如何高效使用FastJSON进行JSON数据解析,特别是从复杂嵌套结构中提取特定字段值的方法。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 使用 Azure Service Principal 和 Microsoft Graph API 获取 AAD 用户列表
    本文介绍了一段通用代码示例,该代码不仅能够操作 Azure Active Directory (AAD),还可以通过 Azure Service Principal 的授权访问和管理 Azure 订阅资源。Azure 的架构可以分为两个层级:AAD 和 Subscription。 ... [详细]
  • 本文探讨了 RESTful API 和传统接口之间的关键差异,解释了为什么 RESTful API 在设计和实现上具有独特的优势。 ... [详细]
  • 前言--页数多了以后需要指定到某一页(只做了功能,样式没有细调)html ... [详细]
  • 本文总结了在使用Ionic 5进行Android平台APK打包时遇到的问题,特别是针对QRScanner插件的改造。通过详细分析和提供具体的解决方法,帮助开发者顺利打包并优化应用性能。 ... [详细]
  • 本文探讨了在 PHP 中处理 JSON 编码时中文字符显示为 Unicode 转义序列的问题,并提供了多种有效的解决方法,包括使用正则表达式替换、URL 编码以及利用 PHP 5.4 及以上版本提供的 JSON_UNESCAPED_UNICODE 选项。 ... [详细]
  • 本文探讨了如何在编程中正确处理包含空数组的 JSON 对象,提供了详细的代码示例和解决方案。 ... [详细]
  • 本文介绍如何使用阿里云的fastjson库解析包含时间戳、IP地址和参数等信息的JSON格式文本,并进行数据处理和保存。 ... [详细]
  • 本文详细介绍了中央电视台电影频道的节目预告,并通过专业工具分析了其加载方式,确保用户能够获取最准确的电视节目信息。 ... [详细]
  • Composer Registry Manager:PHP的源切换管理工具
    本文介绍了一个用于Composer的源切换管理工具——Composer Registry Manager。该项目旨在简化Composer包源的管理和切换,避免与常见的CRM系统混淆,并提供了详细的安装和使用指南。 ... [详细]
  • 本文详细介绍了Git分布式版本控制系统中远程仓库的概念和操作方法。通过具体案例,帮助读者更好地理解和掌握如何高效管理代码库。 ... [详细]
  • 本文介绍了如何利用npm脚本和concurrently工具,实现本地开发环境中多个监听服务的同时启动,包括HTTP服务、自动刷新、Sass和ES6支持。 ... [详细]
author-avatar
大爱开心一下吧_616
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有