2016-03-04 3 views
-1

У меня есть два массиваНаходить элементы не присутствуют в массиве в другом массиве

self.objarr = [ 
     { name: ' abc '}, 
     { name: ' def '}, 
     { name: ' xyz '} 
      ]; 

self.strarr =[' abc ',' mno ']; 

Я хотел бы, чтобы найти элементы в strarr, которые не являются уже присутствуют в objarr (в приведенном выше случае «MnO»).

UPDATE: Были показаны ссылки с ссылками, в которых были массивы одного и того же типа объектов, поэтому оба они были строковыми массивами или оба были объектами, они имели одинаковый стиль. Но в моем случае один - это объект, где другой - строковый массив. Один из ответов был ниже:

var x = ["a","b","c","t"]; 
var y = ["d","a","t","e","g"]; 

myArray = y.filter(function(el) { 
    return x.indexOf(el) < 0; 
}); 

Я пытался что-то на той же схеме, как показано ниже, но это не сработало:

myArray = self.strarr.filter(function (el) { 
       console.log(el); 
       return self.objarr.name.indexOf(el) < 0; 
      }); 

Я с открытия надеждой, что кто-то может помочь.

+0

http://stackoverflow.com/questions/8628059/check-if-every-element-in-one-array-is-in-a-second-array http://stackoverflow.com/questions/ 15514907/определение-ли-один-array-contains-the-content-of-another-array-in-javascri http://stackoverflow.com/questions/16312528/check-if-an-array-contains- any-elements-in-another-array-in-javascript –

+0

@Eray Спасибо за ссылки, но не смогли найти ответ на мою проблему в них, возможно, я чего-то не хватает .. – Arnab

+0

@RoyJ Спасибо за ссылку. если вы ответите от кого-либо из них, я соглашусь с – Arnab

ответ

0

Так как в вашем случае, у вас есть массив объектов и другой массив строк, вы можете использовать следующую code-

myArray = self.strarr.filter(function(strname){ 
    var element = $.grep(self.objarr, function(el){ return el.name == strname; }); 
    if(element.length==0) return strname; 
}); 

Надеется, что это помогает!

+0

Спасибо, я проверю .. – Arnab

+0

@arnab Конечно. Пожалуйста, примите, если он решает вашу проблему. –

+0

попробовал https://jsfiddle.net/yo2ppggc/ получить ошибку. Неожиданный токен. – Arnab

Смежные вопросы