2015-12-15 9 views
0

У меня есть два массива JavaScript, один текущий и один новый. Я могу добавить новые элементы строк из нового массива в текущий массив и ТОЛЬКО новые элементы.Добавление элементов массива в другой массив в том же порядке

Например, если у меня есть два массива currentArray = [a,d] и newArray = [a,b,c,d,e], мы можем видеть, что элементы b, c и e различны (и, следовательно, могут быть добавлены к currentArray).

Мой пользовательский интерфейс позволяет мне выбирать только новые элементы из нового массива для добавления. Но в настоящее время он только присоединяется к текущему в конце массива.

Если бы я, чтобы выбрать элемент Ь, Я хочу, чтобы текущий массив быть currentArray = [a,b,d], а не currentArray= [a,d,b].

Если бы я, чтобы выбрать элемент Ь, а затем с, текущий массив должен быть currentArray= [a,b,c,d]

Как я реализую эту логику?

+0

является 'a2' базового массива или то, что является постоянным? – void

+0

Что вы изучали и пытались манипулировать массивами? Также вы не указали, являются ли эти строки, цифры или что –

+0

Я отредактировал вопрос, чтобы быть более понятным. a2 - новый массив. – averageUsername123

ответ

1

Вы можете использовать эту логику:

var baseArray = ["a", "b", "c", "d", "e"]; 

function appendEl(arr, element){ 

    // Parse through baseArray for every possible element. 
    return baseArray.filter(function(el){ 
    // If element is in arr or is the element itself. 
    if(arr.indexOf(el)!=-1 || el==element) return true; 
    else return false; 

    }); 

} 

Fiddle

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