Determinare se una matrix contiene il contenuto di un'altra matrix in JavaScript / CoffeeScript

In JavaScript, come posso verificare che un arrays abbia gli elementi di un'altra matrix?

arr1 = [1, 2, 3, 4, 5] [8, 1, 10, 2, 3, 4, 5, 9].function_name(arr1) # => true 

Questa function non è impostata, ma è ansible eseguire semplicemente un'intersezione ad hoc e controllare la lunghezza.

 [8, 1, 10, 2, 3, 4, 5, 9].filter(function (elem) { return arr1.indexOf(elem) > -1; }).length == arr1.length 

Un modo più efficace per farlo sarebbe quello di utilizzare .every cosa che cortocircuiti in casi falsi.

 arr1.every(elem => arr2.indexOf(elem) > -1); 

È ansible utilizzare arrays.indexOf () :

pseudocodice:

 function arraysContainsAnotherArray(needle, haystack){ for(var i = 0; i < needle.length; i++){ if(haystack.indexOf(needle[i]) === -1) return false; } return true; } 
 function arr(arr1,arr2) { for(var i=0;i<arr1.length;i++) { if($.inArray(arr1[i],arr2) ==-1) //here it returns that arr1 value does not contain the arr2 else // here it returns that arr1 value contains in arr2 } }