当前位置: 首页 > 图文教程 > 网络编程 > Javascript > javascript下过滤数组重复值的代码

Javascript
JavaScript如何重构嵌套循环和递归
JS应用在Firebug中的扩展架构模式
提升JS性能:将递归转换为迭代
IE7浏览器下缩放图片失真问题
JavaScript对DOM进行操作的指导性原则
JavaScript有趣实例:胸罩罩杯尺寸计算器
Firefox的Firebug扩展:FireScope
Mozilla的JavaScript引擎__noSuchMethod__()方法
JavaScript+CSS制作的网站导航菜单
javascript的私有成员(private)
Javascript绘制分析曲线图
ie6使用js支持hover伪类
收集的25个下拉网页菜单特效Javascript脚本
Javascript框架的自定义事件
总结Javascript调用函数的方法
JS教程:call、apply、callee用法
JS教程:数组类型检测和集合检测
兼容FF的设为首页与收藏网站的JS代码
Javascript教程:PopUp对象
JS读写Cookie以及设置过期时间

Javascript 中的 javascript下过滤数组重复值的代码


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-12   浏览: 306 ::
收藏到网摘: n/a

<script language="javascript">
function getNoRepeat() {
return arguments[0].join('‖').match(/(\b[^‖]+\b)(?!.*‖\1\b)/ig);
}
var tmpArr = [1, 'a', 'ab', 'abc', 'd', 1.2, 'a+b', 'd', 'e', 5, 'a', 1, 'h', 'c', 'ab'];
var retArr = getNoRepeat(tmpArr);
alert(retArr);
</script>

<script>
alert("1,11,1.11,1111,111,11,1,1.11".match(/(\b\d+(?:\.\d+)?\b)(?!.*,\1\b)/g))
</script>

<script>
alert("123450,0,1,2,5,3,2,12,4,1,1,123450".match(/(\b\d+\b)(?!.*,\1(,|$))/ig))
</script>


<script>
alert("123450,0,1,2,5,3,2,12,4,1,1,123450".match(/(\b\d+\b)(?!(?:,[^,]+)*,\1(?:,|$))/ig))
</script>


<script>
var s = "0,1,2,5,3,2,12,4,1,1,123450";
var sTmp = (","+s.split(",").reverse().join(",")+",").replace(/,([^,]+)(?=,.*,\1,)/ig, '').split(",").reverse().join();
sTmp = sTmp.substr(1, sTmp.length-2);
alert(sTmp)
</script>


<script>
var strArr = "123450,0,1,2,5,3,2,12,4,1,1,123450".split(",")
var str = ","
for(i = 0; i < strArr.length; i++)
{
if(str.indexOf("," + strArr[i] + ",") == -1)str += strArr[i] + ","
}
alert(str.substring(1,str.length - 1))
</script>