js找出两个数组中的相同元素
来源:互联网 发布:js查找字符串中字符 编辑:程序博客网 时间:2024/05/22 10:30
之前在网上搜到的找出两个数组中的相同元素不对或者说是有缺陷,自己写了一个,适用于一般的数组,不包括数组元素含有对象的等一些情况。代码如下
//传入两个数组作为参数,寻找两个数组中的相同元素。
function FilterData(a,b)
{ //循环判断数组a里的元素在b里面有没有,有的话就放入新建立的数组中
var result = new Array();
var c=b.toString();
for(var i=0;i<a.length;i++)
{
if(c.indexOf(a[i].toString())>-1)
{
result.push(a[i]);
}
}
return result;
}
通过indexof这种方法来判断是否包含也是有瑕疵的,比如说"a1"是包含"a"的
var str1="a1";
var str2='a';
str1.indexOf(str2)>-1也是正确的,所以说以上代码应该进行优化,不过优化后的代码自己还没测试,一般情况下用上面的代码应该就可以了。
function FilterData(a,b)
{ //循环判断数组a里的元素在b里面有没有,有的话就放入新建立的数组中
var result = new Array();
var c=b.toString();
for(var i=0;i<a.length;i++)
{
if(c.indexOf(a[i].toString())>-1)
{
for(var j=0;j<b.length;j++)
{
if(a[i]==b[j])
{
result.push(a[i]);
break;
}
}
}
}
return result;
}
当然了,如果改成双重循环判断元素是否相等,则可以适用于所有的情况,即使数组元素有对象的情况也是可以的。
- js找出两个数组中的相同元素
- php找出两个有序数组中的相同元素
- 两个数组中找出相同的元素
- 找出两个数组中相同的元素
- R-找出两个数列中的相同元素
- 写文章 JS找两个数组中的相同元素【算法】
- 找出数组相同元素
- 【一个小实验】找出两个数组中相同的元素
- 找出两个有序数组中相同的元素
- 找两个数组中的相同元素
- 找到两个数组中的相同元素
- JAVA两个数组间元素的比较(找出相同或者不同元素)
- JAVA两个数组间元素的比较(找出相同或者不同元素)
- java找出两个字符串相同的元素
- JAVA比较两个数组中的元素是否相同
- iOS_XZ之判断两个数组中的元素相同和相等
- 去除两个数组相同元素
- 两个数组找相同元素
- 关于序偶和二元关系的基本概念(摘自Wikipedia)
- matlab plot绘图
- CSS各种居中方法
- iOS开发网络篇—搭建本地服务器
- 后台获取 已存在的 ApplicationContext 对象
- js找出两个数组中的相同元素
- iOS loadView,viewDidLoad,viewDidUnload用法
- Git之初识版本控制工具
- UVALive 5798 Jupiter Atacks!(线段树)
- Scanf连续调用多次并且存在%c的问题
- 浅谈Feature Scaling
- Android - 手机淘宝启动页(Splash)是如何实现的?
- IPhone开发工具篇-利用xcode profile和analyze进行性能优化
- jQuery基本选择符