2016-12-11 58 views
-1

移動我需要有關陣列一些幫助: 我有這樣一個數組:陣列中的JavaScript

a,b,0,0,0,0 

我想somethink得到這個:

0,0,0,0,a,b 

長度必須是可配置的,默認值爲0. 關於。

+3

反轉或移動? 'a'和'b'不會顛倒過來。 –

+0

感動對不起,我編輯 – HyrozenT

+0

到目前爲止您已經嘗試了什麼? – Li357

回答

0

您可以搜索零,將索引作爲拼接的長度,並將其餘拼接數組連接起來。

['a', 'b', 0, 0, 0, 0]  index of first 0 with indexOf 
     ^     
['a', 'b'][0, 0, 0, 0]  splice array and get two arrays 

[0, 0, 0, 0] + ['a', 'b']  concat both arrays in different order 

var array = ['a', 'b', 0, 0, 0, 0]; 
 

 
array = array.concat(array.splice(0, array.indexOf(0))); 
 
console.log(array);

+0

就是這樣,非常感謝。我必須更多地考慮這種拼接方法! – HyrozenT

-2

你可以使用這樣的事情,一個簡單的 「自定義」 比較:

var values = [0, "b", 0, 0, "a", 0]; 
values.sort(function(a, b){ 
if(b==0) 
    return true 
}); 

您可以使用自定義比較玩到你喜歡的東西。

+0

我想了解爲什麼這個答案沒有用。 – emish89