介绍
使用JavaScript怎么获取数组中的不同或相同元素?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。
<强> 1,取出两个数组的不同元素强>
var arr1 =, (0, 1, 2, 3, 4, 5]; var arr2 =, [0, 4、6 1、3、9]; function getArrDifference (arr1, arr2), { ,,,return arr1.concat arr2 .filter(函数(v,,我,,arr), { ,,,,,return arr.indexOf (v),===, arr.lastIndexOf (v); ,,,}); ,,} console.log才能(getArrDifference (arr1 arr2)); , ,//输出:(4),(2,5,6,9]
<强> (1)concat()方法:用于连接两个或多个数组。强>
,该方法不会改变现有的数组,而仅仅会返回被连接数组的一个副本,例:
& lt; script 类型=拔谋?javascript"比; 数组var arr =, new (3) arr [0],=,“George" 加勒比海盗[1],=,“John" 加勒比海盗[2],=,“Thomas" 数组var arr2 =, new (3) arr2 [0],=,“James" arr2 [1],=,“Adrew" arr2 [2],=,“Martin" document . write (arr.concat (arr2));//输出:乔治,约翰,托马斯,詹姆斯,Adrew,马丁 & lt;/script>
<强>(2)数组过滤器()方法:强>
- <李>
创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
李> <李>注意:过滤器()不会对空数组进行检测。
李> <李>注意:过滤器()不会改变原始数组。
李> <李>语法:array.filter(函数(arr currentValue、索引),thisValue)
李><强> (3)indexOf()方法:强>
- <李>
可返回某个指定的字符串值在字符串中首次出现的位置。
李> <李>如果没有找到匹配的字符串则返回1 .
李> <李>注意:indexOf()方法区分大小写。
李><>强(4)lastIndexOf()方法:强>
- <李>
可返回一个指定的字符串值最后出现的位置,如果指定第二个参数,则在一个字符串中的指定位置从后向前搜索。
李> <李>注意:该方法将从后向前检索字符串,但返回是从起始位置(0)开始计算子字符串最后出现的位置。看它是否含有字符串。
李> <李>开始检索的位置在字符串的开始处或字符串的结尾(没有指定开始时)。
李> <李>如果没有找到匹配字符串则返回1 .
李> <李>注意:lastIndexOf()方法是区分大小写的!
李><强>,2,取出两个数组的相同元素强>
var arr1 =, (0, 1, 2, 3, 4, 5]; var arr2 =, [0, 4、6 1、3、9]; function getArrEqual (arr1, arr2), { ,,,let newArr =, []; ,,,for (let 小姐:=,0;,小姐:& lt;, arr2.length;,我+ +),{ ,,,,,for (let j =, 0;, j & lt;, arr1.length;, j + +), { ,,,,,,,如果(arr1 [j],===, arr2[我]){ ,,,,,,,,,newArr.push (arr1 [j]); ,,,,,,,} ,,,} ,,} ,,return newArr; } console.log (getArrEqual (arr1, arr2)); ,//输出:(4),[0,,4,,1,,3]
看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。