我有两个JavaScript数组,一个是当前的,另一个是新的。我可以将String的新元素从新数组附加到当前数组中,并且只能添加新元素。
例如,如果我有两个数组currentArray = [a,d]
和newArray = [a,b,c,d,e]
,我们可以看到元素b、c和e是不同的(因此可以附加到currentArray)。
我的UI允许我只从新数组中选择要附加的新元素。但目前,它只附加到数组末尾的电流。
如果我选择元素b,我希望当前数组是currentArray = [a,b,d]
,而不是currentArray= [a,d,b].
如果我选择元素b,然后选择元素c,那么当前数组应该是currentArray= [a,b,c,d]
如何实现此逻辑?
您可以使用以下逻辑:
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