Skip to content

Instantly share code, notes, and snippets.

@chuck0523
Created August 22, 2015 07:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chuck0523/2a0dd27e1f6a1d69cf05 to your computer and use it in GitHub Desktop.
Save chuck0523/2a0dd27e1f6a1d69cf05 to your computer and use it in GitHub Desktop.
(function() {
var log = function(x) {console.log(x)}
var a = [1, 2, 5];
var b = [5, 2, 8];
var x, y, z;
z = _.difference(a, b);
//log(z); // [1]
y = _.intersection(a, b);
//log(y); // [2, 5]
x = _.union(a, b);
//log(x); // [1, 2, 5, 8]
var u = _.unique([2, 5, 10, 5, 10]);
// log(u);
// union by js
var sumAry = [],
totalLen = a.length + b.length;
eachAry = [a, b],
eachLen = [a.length, b.length];
var uniqueCheck = function(a, s) {
for (var i = 0; i < a.length; i++) {
if(a[i] == s) {
return false;
}
}
return true;
};
for(var i = 0; i < totalLen; i++) {
for(var j = 0; j < eachLen[i]; j++) {
if( uniqueCheck(sumAry, eachAry[i][j]) ) {
sumAry.push(eachAry[i][j]);
}
}
}
//log(sumAry);
// intersection by js
var interAry = [];
for (var i = 0; i < a.length; i++) {
for (var j = 0; j < b.length; j++) {
if(a[i] == b[j]){
interAry.push(a[i]);
break;
}
}
}
//log(interAry);
// difference by js
var difAry = [];
var difCheck = function(a){
for(var i = 0; i < b.length; i++) {
if(a == b[i]) {
return false;
}
}
return true;
};
for (var i = 0; i < a.length; i++) {
if( difCheck(a[i]) ) {
difAry.push(a[i]);
}
}
//log(difAry);
// unique by js
var nums = [2, 3, 9, 10, 2, 9],
uniqueAry = [];
var isUnique = function(a, e) {
for (var i = 0; i < a.length; i++) {
if(a[i] == e) {
return false;
}
}
return true;
};
for(var i = 0; i < nums.length; i++) {
if( isUnique(uniqueAry, nums[i]) ) {
uniqueAry.push(nums[i]);
}
}
//log(uniqueAry); // [2, 3, 9 ,10]
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment