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


Posted in Javascript onJanuary 09, 2013

方法一:

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 < ary.length; 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 < ck.length; 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 < ck.length; i++) { 
if (ck[i].type == "checkbox") { 
ck[i].checked = false; 
} 
} 
}

<input id='chk_pkId' type='checkbox' name='chk' onclick='checkRe(this);' value='值|pkId' />

方法二:
function filterRepeatStr(str){ 
var ar2 = str.split(","); 
var array = new Array(); 
var j=0 
for(var i=0;i<ar2.length;i++){ 
if((array == "" || array.toString().match(new RegExp(ar2[i],"g")) == null)&&ar2[i]!=""){ 
array[j] =ar2[i]; 
array.sort(); 
j++; 
} 
} 
return array.toString(); 
}
Javascript 相关文章推荐
html数组字符串拼接的最快方法
Sep 16 Javascript
基于jQuery的烟花效果(运动相关)点击屏幕出烟花
Jun 14 Javascript
js读写cookie实现一个底部广告浮层效果的两种方法
Dec 29 Javascript
raphael.js绘制中国地图 地图绘制方法
Feb 12 Javascript
通过url查找a元素并点击
Apr 09 Javascript
jquery插件jSignature实现手动签名
May 04 Javascript
JavaScript中使用自然对数ln的方法
Jun 14 Javascript
详解JavaScript中的异常处理方法
Jun 16 Javascript
学习javascript面向对象 javascript实现继承的方式
Jan 04 Javascript
基于socket.io+express实现多房间聊天
Mar 17 Javascript
JavaScript必知必会(九)function 说起 闭包问题
Jun 08 Javascript
Js apply方法详解
Feb 16 Javascript
jquery插件之信息弹出框showInfoDialog(成功/错误/警告/通知/背景遮罩)
Jan 09 #Javascript
javaScript矢量图表库-gRaphael几行代码实现精美的条形图/饼图/点图/曲线图
Jan 09 #Javascript
一行代码实现纯数据json对象的深度克隆实现思路
Jan 09 #Javascript
javascript parseInt() 函数的进制转换注意细节
Jan 08 #Javascript
Raphael一个用于在网页中绘制矢量图形的Javascript库
Jan 08 #Javascript
jquery插件珍藏(图片局部放大/信息提示框)
Jan 08 #Javascript
jquery Mobile入门—外部链接切换示例代码
Jan 08 #Javascript
You might like
php根据身份证号码计算年龄的实例代码
2014/01/18 PHP
PHP实现生成唯一编号(36进制的不重复编号)
2014/07/01 PHP
php计算多维数组中所有值总和的方法
2015/06/24 PHP
PHP如何将log信息写入服务器中的log文件
2015/07/29 PHP
自制PHP框架之路由与控制器
2017/05/07 PHP
PHP chunk_split()函数讲解
2019/02/12 PHP
基于jQuery的history历史记录插件
2010/12/11 Javascript
VBS通过WMI监视注册表变动的代码
2011/10/27 Javascript
button没写type=button会导致点击时提交
2014/03/06 Javascript
js获取元素相对窗口位置的实现代码
2014/09/28 Javascript
JQuery中使用.each()遍历元素学习笔记
2014/11/08 Javascript
自己动手手写jQuery插件总结
2015/01/20 Javascript
JS将滑动门改为选项卡(需鼠标点击)的实现方法
2015/09/27 Javascript
Javascript之Math对象详解
2016/06/07 Javascript
node.js爬虫爬取拉勾网职位信息
2017/03/14 Javascript
基于jQuery解决ios10以上版本缩放问题
2017/11/03 jQuery
vue语法自动转typescript(解放双手)
2019/09/18 Javascript
js实现漂亮的星空背景
2019/11/01 Javascript
python定向爬取淘宝商品价格
2018/02/27 Python
python使用__slots__让你的代码更加节省内存
2018/09/05 Python
python把1变成01的步骤总结
2019/02/27 Python
django富文本编辑器的实现示例
2019/04/10 Python
python搜索包的路径的实现方法
2019/07/19 Python
python实现操作文件(文件夹)
2019/10/31 Python
python pillow库的基础使用教程
2021/01/13 Python
html5中JavaScript removeChild 删除所有节点
2014/05/16 HTML / CSS
美国韩国化妆品和护肤品购物网站:Beautytap
2018/07/29 全球购物
银行会计职员个人的自我评价
2013/09/29 职场文书
大学生专科学习生活的自我评价
2013/12/07 职场文书
军训鉴定表自我鉴定
2014/02/13 职场文书
廉洁教育学习材料
2014/05/19 职场文书
销售团队激励口号
2014/06/06 职场文书
企业标语口号
2014/06/10 职场文书
2015年董事长秘书工作总结
2015/07/23 职场文书
2016教师廉洁从教心得体会
2016/01/13 职场文书
2019年怎样才能撰写出优秀的自荐信
2019/03/25 职场文书