Intersect knockoutjs observablearray using linqjs
I would not use linq.js for anything time sensitive, it is known to be slow, definitely compared to just using old skool for loops and arrays. Which is what I would use.

Other than, if I were to write this, I would consider naming some thing differently:


obsArray2 -> observableArray, there is no obsArray1, and it was not clear at first if obs means there are objects in the array or it is an observable arrays.
self -> anything but self which usually refers to this, perhaps enum1 ?
arrValues1 really contains an Enumerable which is not really an array, confusing, I would perhaps have chosen set1 because in maths, intersections are made of sets or enum1 because that is what the variable type is
Same for arrValues2 of course
intersectedValues -> I would have gone for simply intersection


Furthermore,


You have 2 return statements, there can be only one
It seems silly to go back to self and filter out only elements that are in the intersection, can't you build the return value from intersectedValues ?