Tôi có một mảng như:
items=[{'id':1},{'id':2},{'id':3},{'id':4}];
Làm thế nào tôi nên thêm một cặp mới
items.push[{'id':5}];
8 vào mảng?
Marc Audet
45K10 Huy hiệu vàng61 Huy hiệu bạc82 Huy hiệu Đồng10 gold badges61 silver badges82 bronze badges
Đã hỏi ngày 23 tháng 9 năm 2013 lúc 8:28Sep 23, 2013 at 8:28
4
Sử dụng .push:
items.push[{'id':5}];
Đã trả lời ngày 23 tháng 9 năm 2013 lúc 8:29Sep 23, 2013 at 8:29
CodingInTrigueCodingIntrigueCodingIntrigue
73.3K29 Huy hiệu vàng169 Huy hiệu bạc176 Huy hiệu đồng29 gold badges169 silver badges176 bronze badges
3
.push [] sẽ thêm các phần tử vào cuối một mảng.
Sử dụng .UnShift [] nếu cần thêm một số phần tử vào đầu mảng I.E:
items.unshift[{'id':5}];
Demo:
items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
items.unshift[{'id': 0}];
console.log[items];
Và sử dụng .splice [] trong trường hợp bạn muốn thêm đối tượng tại một chỉ mục cụ thể, tức là:
items.splice[2, 0, {'id':5}];
// ^ Given object will be placed at index 2...
Demo:
items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
items.splice[2, 0, {'id': 2.5}];
console.log[items];
Đã trả lời ngày 18 tháng 1 năm 2018 lúc 12:04Jan 18, 2018 at 12:04
Mohammad Usmanmohammad UsmanMohammad Usman
Phim huy hiệu vàng 35,8k2093 Huy hiệu bạc92 Huy hiệu Đồng20 gold badges93 silver badges92 bronze badges
3
Đôi khi .concat [] tốt hơn .push [] kể từ .concat [] trả về mảng mới trong khi .push [] trả về độ dài của mảng.
Do đó, nếu bạn đang đặt một biến bằng kết quả, hãy sử dụng .concat [].
items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
newArray = items.push[{'id':5}]
Trong trường hợp này, NewArray sẽ trả lại 5 [chiều dài của mảng].
newArray = items.concat[{'id': 5}]
Tuy nhiên, ở đây NewArray sẽ trả về [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}, {'id': 5}].
Đã trả lời ngày 23 tháng 6 năm 2018 lúc 23:35Jun 23, 2018 at 23:35
NatoriousNatorious
811 Huy hiệu bạc3 Huy hiệu đồng1 silver badge3 bronze badges
Nếu bạn đang thực hiện jQuery và bạn đã có một thứ serializearray đang diễn ra liên quan đến dữ liệu biểu mẫu của bạn, chẳng hạn như:
var postData = $['#yourform'].serializeArray[];
// postData [array with objects] :
// [{name: "firstname", value: "John"}, {name: "lastname", value: "Doe"}, etc]
... và bạn cần thêm một khóa/giá trị vào mảng này với cùng một cấu trúc, ví dụ khi đăng lên yêu cầu PHP AJAX thì sau:
postData.push[{"name": "phone", "value": "1234-123456"}];
Result:
items.push[{'id':5}];
0Đã trả lời ngày 9 tháng 10 năm 2019 lúc 8:53Oct 9, 2019 at 8:53
Anoraqanoraqanoraq
4877 Huy hiệu bạc8 Huy hiệu Đồng7 silver badges8 bronze badges
Giải pháp mới với ES6
Đối tượng mặc định
items.push[{'id':5}];
1Một đối tượng khác
items.push[{'id':5}];
2Đối tượng gán es6
items.push[{'id':5}];
3Kết quả
items.push[{'id':5}];
4Đã trả lời ngày 7 tháng 12 năm 2019 lúc 14:35Dec 7, 2019 at 14:35
UgurugurUgur
6168 Huy hiệu bạc19 Huy hiệu đồng8 silver badges19 bronze badges
2
Đẩy nhiều giá trị vào một mảng trong javascript #
Sử dụng phương thức
9 để đẩy nhiều giá trị vào một mảng, ví dụ: items.push[{'id':5}];
0. Phương thức items.unshift[{'id':5}];
1 thêm một hoặc nhiều giá trị vào cuối một mảng.items.unshift[{'id':5}];
items.push[{'id':5}];
5Phương thức mảng.push lấy một hoặc nhiều đối số và thêm chúng vào cuối mảng.
Phương pháp thay đổi nội dung của mảng gốc và trả về độ dài mới của mảng.
Lưu ý rằng phương thức
1 không trả về mảng, nó trả về độ dài mới của mảng.items.unshift[{'id':5}];
Ngoài ra, bạn có thể sử dụng cú pháp lan truyền [...].
Đẩy nhiều giá trị vào một mảng bằng cú pháp lan truyền #
Sử dụng cú pháp lan truyền để đẩy nhiều giá trị vào một mảng, ví dụ:
3. Cú pháp lan truyền có thể được sử dụng để giải nén các giá trị của mảng gốc theo sau là một hoặc nhiều giá trị bổ sung.items.unshift[{'id':5}];
items.push[{'id':5}];
6Lưu ý rằng chúng tôi đã sử dụng từ khóa
items.unshift[{'id':5}];
4 để khai báo biến items.unshift[{'id':5}];
5. Nếu chúng tôi tuyên bố biến bằng cách sử dụng items.unshift[{'id':5}];
6, chúng tôi sẽ không thể gán lại nó.Một cách dễ dàng để suy nghĩ về toán tử lây lan là chúng tôi giải nén các giá trị của một mảng sang một mảng khác.
Trong kịch bản cụ thể này, chúng tôi giải nén nội dung của mảng
items.unshift[{'id':5}];
5 vào một mảng mới và thêm 3 giá trị nữa vào cuối mảng mới.Ngoài ra, bạn có thể sử dụng phương pháp
items.unshift[{'id':5}];
8.Đẩy nhiều giá trị vào một mảng bằng splice [] #
Sử dụng phương thức
9 để đẩy nhiều giá trị vào một mảng, ví dụ: items.unshift[{'id':5}];
0. Phương thức items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
items.unshift[{'id': 0}];
console.log[items];
8 sẽ thêm các giá trị được cung cấp vào cuối mảng.items.unshift[{'id':5}];
items.push[{'id':5}];
7Chúng tôi đã chuyển các đối số sau cho phương thức mảng.Splice:
- Bắt đầu chỉ mục - Chỉ mục để bắt đầu thay đổi mảng - the index at which to start changing the array
- Xóa Đếm - Có bao nhiêu yếu tố chúng ta muốn xóa khỏi mảng, từ chỉ mục bắt đầu trở đi - how many elements we want to delete from the array, from the start index onwards
- một hoặc nhiều giá trị để thêm vào mảng, từ chỉ mục bắt đầu trở đistart index onwards
Chúng tôi muốn chèn các phần tử ở cuối mảng, vì vậy chúng tôi đã chuyển độ dài của mảng làm chỉ số bắt đầu.
Chúng tôi không muốn xóa bất kỳ yếu tố nào, vì vậy chúng tôi đã cung cấp
items = [{'id': 1}, {'id': 2}, {'id': 3}, {'id': 4}];
items.unshift[{'id': 0}];
console.log[items];
2 cho đối số đếm xóa.delete count argument.Cách tiếp cận này đạt được kết quả tương tự như phương pháp
items.unshift[{'id':5}];
1, tuy nhiên nó có một chút dài dòng và gián tiếp.Đọc thêm #
- Phần tử mảng.push [] nếu không tồn tại bằng cách sử dụng javascript
- Đếm các yếu tố duy nhất trong một mảng trong JavaScript
- Đếm các phần tử trong mảng phù hợp với điều kiện bằng cách sử dụng JS
- Xóa các bản sao khỏi một mảng trong JavaScript
- Lọc một mảng có nhiều điều kiện trong JavaScript
- Lọc một mảng các đối tượng dựa trên thuộc tính - JavaScript