这篇文章主要介绍了JavaScript获取两个数组交集的方法,涉及javascript针对数组的相关操作技巧,需要的朋友可以参考下
本文实例讲述了JavaScript获取两个数组交集的方法。分享给大家供大家参考。具体如下:
这里传入的数组必须是已经排过序的
- /* finds the intersection of
- * two arrays in a simple fashion.
- *
- * PARAMS
- * a - first array, must already be sorted
- * b - second array, must already be sorted
- *
- * NOTES
- *
- * Should have O(n) operations, where n is
- * n = MIN(a.length(), b.length())
- */
- function arrayIntersection(a, b)
- {
- var ai=0, bi=0;
- var result = new Array();
- while( ai < a.length && bi < b.length )
- {
- if (a[ai] < b[bi] ){ ai++; }
- else if (a[ai] > b[bi] ){ bi++; }
- else /* they're equal */
- {
- result.push(a[ai]);
- ai++;
- bi++;
- }
- }
- return result;
- }
- console.log(arrayIntersection([1,2,3],[2,3,4,5,6]));//[2,3]
希望本文所述对大家的javascript程序设计有所帮助。
新闻热点
疑难解答
图片精选