2012-01-06 39 views
11

Tôi đang cố gắng viết một câu lệnh có hiệu quả đẩy đến vị trí 1 của một mảng, và đẩy bất cứ điều gì ở vị trí đó, hoặc sau khi nó trở lại một vị trí.Làm thế nào để đẩy vào một mảng ở một vị trí cụ thể?

array = [4,5,9,6,2,5] 

#push 0 to position 1 

array = [4,0,5,9,6,2,5] 

#push 123 to position 1 

array = [4,123,0,5,9,6,2,5] 

Cách tốt nhất để viết nội dung này là gì? (javascript hoặc coffeescript có thể chấp nhận được)

Cảm ơn!

+0

bạn có thể sử dụng http://stackoverflow.com/questions/586182/javascript-insert-item-into -array-at-a-specific-index – HasanCseBuet

+0

http://www.w3schools.com/jsref/jsref_splice.asp –

+2

@Anand: Vui lòng không nạp thêm w3fools.com nữa, có nhiều [tốt hơn] (https : //developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Array/splice) tài liệu tham khảo [có sẵn] (http://es5.github.com/#x15.4.4.12). –

Trả lời

18
array = [4,5,9,6,2,5] 

#push 0 to position 1 
array.splice(1,0,0) 

array = [4,0,5,9,6,2,5] 

#push 123 to position 1 
array.splice(1,0,123) 

array = [4,123,0,5,9,6,2,5] 
+1

** Lưu ý: ** mối nối trả về một mảng các phần tử _removed_. Trong các ví dụ này, không có phần tử nào được loại bỏ để 'console.log (array.splice (1.0,123))' sẽ trả về '[]'. Nên có RTFM – Pakman

8

Để đẩy bất kỳ mục nào tại chỉ số cụ thể trong việc sử dụng mảng sau cú pháp

// The original array 
var array = ["one", "two", "four"]; 
// splice(position, numberOfItemsToRemove, item) 
array.splice(2, 0, "three"); 

console.log(array); // ["one", "two", "three", "four"] 
Các vấn đề liên quan