2016-11-17 5 views
0
var array = ["object1","object2","object3","object4","object5"]; 
var copy = array.slice(); 
copy.forEach(function(value) { 
if(value === "object3"){ 
    value = "newObject3" 

} 
}); 

console.log(copy); 

Если я хочу переместить object3 в массив к первому индексу после того, как я присвоил ему новое значение. Как мне это сделать? и что самое эффективное и меньшее время? любые библиотеки, такие как lodash, могут использоваться.Javascript: движущиеся элементы в массиве

+0

[array.prototype.push] (https://developer.mozilla.org/nl/docs/Web/JavaScript/Reference/Global_Objects/Array/push) является то, что вы ищете , –

+2

Этот вопрос обсуждается довольно хорошо в этом вопросе: http://stackoverflow.com/questions/5306680/move-an-array-element-from-one-array-position-to-another –

+0

И это на самом деле не объекты , но строки? – adeneo

ответ

1

var array = ["object1", "object2", "object3", "object4", "object5"]; 
 
var copy = array.slice(); 
 
copy.forEach(function(value, index, theArray) { 
 
    if (value === "object3") { 
 
    theArray[index] = theArray[0]; 
 
    theArray[0] = "newObject3"; 
 
    } 
 
}); 
 

 
console.log(copy);