2016-11-14 4 views
-1

У меня есть два массива, который содержит равную длину:Как удалить значение массива со ссылкой на другой массив

var a = [a, b,c,d,e]; 
var b = [1,2,3,4,5]; 

У меня есть другая переменная «C», который содержит одно значение массива а

var c = "d"; 

Как удалить «4» в другом массиве «Ъ» на основе значения вар с требуемого

Конечные значения:

finala = [a,b,c,e]; 
finalb = [1,2,3,5]; 
removeda = d; 
removedb = 4; 
+0

Что идентификатор 'а = [а, б, в, г, д, [1,2,3] ] ' – Rajesh

+0

В массиве' a' содержатся строки или другие переменные? – gus27

ответ

0

Это должно сделать работу

var index = a.indexOf(c) 
var removeda = a.splice(index, 1)[0]; 
var removedb = b.splice(index, 1)[0]; 
1

Вы можете использовать Array#indexOf для индекса и использовать Array#splice для обоих массивов.

var a = ['a', 'b', 'c', 'd', 'e'], 
 
    b = [1, 2, 3, 4, 5], 
 
    c = 'd', 
 
    index = a.indexOf(c), 
 
    removeda = a.splice(index, 1)[0], 
 
    removedb = b.splice(index, 1)[0]; 
 

 
console.log(a); 
 
console.log(b); 
 
console.log(removeda); 
 
console.log(removedb);
.as-console-wrapper { max-height: 100% !important; top: 0; }

+2

OP также хочет сохранить сохраненные значения. – Cerbrus

0

Использование Array#splice и Array#indexOf методы.

var a = ['a', 'b', 'c', 'd', 'e']; 
 
var b = [1, 2, 3, 4, 5]; 
 
var c = "d"; 
 

 
// get index of eleemnt in array `a` 
 
var i = a.indexOf(c); 
 

 
// remove element and store them in variable 
 
var removeda = a.splice(i, 1)[0], 
 
    removedb = b.splice(i, 1)[0]; 
 

 
console.log(a, b, removeda, removedb)

0

Там вы идете.
Удаление элементов из обоих массивов, и хранение, какие элементы вы удалили:

var a = ['a', 'b','c','d','e'], 
 
    b = [1,2,3,4,5], 
 
    c = "d", 
 
    index = a.indexOf(c); 
 

 
var removedA = a.splice(index, 1)[0]; 
 
var removedB = b.splice(index, 1)[0]; 
 
console.log(a); 
 
console.log(removedA) 
 
console.log(b); 
 
console.log(removedB)

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