Điều đó là tự nhiên, bởi vì
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
3 loại bỏ một giá trị bởi let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
4. Đó là tất cả những gì nó làm. Phạt tiền đối tượng. Nhưng đối với mảng, chúng ta thường muốn các phần tử còn lại dịch chuyển và chiếm vị trí được giải phóng. Chúng tôi hy vọng sẽ có một mảng ngắn hơn bây giờVì vậy, nên sử dụng các phương pháp đặc biệt
các mảng. phương pháp mối nối là một con dao quân đội Thụy Sĩ cho các mảng. Nó có thể làm mọi thứ. chèn, xóa và thay thế các phần tử
Cú pháp là
arr.splice[start[, deleteCount, elem1, ..., elemN]]
Nó sửa đổi
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5 bắt đầu từ chỉ mục let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
6. loại bỏ các phần tử let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
7 và sau đó chèn let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
8 vào vị trí của chúng. Trả về mảng các phần tử đã loại bỏPhương pháp này rất dễ nắm bắt bằng các ví dụ
Hãy bắt đầu với việc xóa
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
Dễ dàng, phải không?
Trong ví dụ tiếp theo, chúng tôi loại bỏ 3 phần tử và thay thế chúng bằng hai phần tử còn lại
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
0Ở đây chúng ta có thể thấy rằng
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
11 trả về mảng các phần tử đã bị loại bỏlet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
2Phương thức
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
11 cũng có thể chèn các phần tử mà không cần xóa. Để làm được điều đó, chúng ta cần đặt let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
7 thành let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
14let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
Cho phép chỉ mục tiêu cực
Ở đây và trong các phương thức mảng khác, chỉ số âm được cho phép. Họ chỉ định vị trí từ cuối mảng, như ở đây
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
1lát cắt
phương pháp mảng. slice đơn giản hơn nhiều so với
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
15 trông tương tựCú pháp là
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
9Nó trả về một mảng mới sao chép vào đó tất cả các mục từ chỉ mục
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
6 đến let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
17 [không bao gồm let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
17]. Cả let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
6 và let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
17 đều có thể âm, trong trường hợp đó, vị trí từ cuối mảng được giả địnhNó tương tự như một phương thức chuỗi
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
91, nhưng thay vì các chuỗi con, nó tạo ra các mảng conVí dụ
arr.splice[start[, deleteCount, elem1, ..., elemN]]
6Chúng ta cũng có thể gọi nó mà không cần đối số.
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
92 tạo một bản sao của let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5. Điều đó thường được sử dụng để lấy một bản sao cho các phép biến đổi tiếp theo mà không ảnh hưởng đến mảng ban đầuconcat
phương pháp mảng. concat tạo một mảng mới bao gồm các giá trị từ các mảng khác và các mục bổ sung
Cú pháp là
arr.splice[start[, deleteCount, elem1, ..., elemN]]
9Nó chấp nhận bất kỳ số lượng đối số nào - mảng hoặc giá trị
Kết quả là một mảng mới chứa các mục từ
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5, sau đó là let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
95, let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
96, v.v.Nếu một đối số
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
97 là một mảng, thì tất cả các phần tử của nó sẽ được sao chép. Mặt khác, chính đối số được sao chépVí dụ
arr.splice[start[, deleteCount, elem1, ..., elemN]]
0Thông thường, nó chỉ sao chép các phần tử từ mảng. Các đối tượng khác, ngay cả khi chúng trông giống như mảng, được thêm vào như một tổng thể
arr.splice[start[, deleteCount, elem1, ..., elemN]]
1…Nhưng nếu một đối tượng dạng mảng có thuộc tính
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
98 đặc biệt, thì nó được coi là một mảng bởi let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
99. thay vào đó các yếu tố của nó được thêm vàoarr.splice[start[, deleteCount, elem1, ..., elemN]]
2lặp đi lặp lại. cho mỗi
các mảng. Phương thức forEach cho phép chạy một hàm cho mọi phần tử của mảng
cú pháp
arr.splice[start[, deleteCount, elem1, ..., elemN]]
3Chẳng hạn, điều này cho thấy từng phần tử của mảng
arr.splice[start[, deleteCount, elem1, ..., elemN]]
4Và mã này phức tạp hơn về vị trí của chúng trong mảng mục tiêu
arr.splice[start[, deleteCount, elem1, ..., elemN]]
5Kết quả của hàm [nếu nó trả về bất kỳ] bị loại bỏ và bỏ qua
Tìm kiếm trong mảng
Bây giờ hãy giới thiệu các phương thức tìm kiếm trong một mảng
indexOf/lastIndexOf và bao gồm
Các phương thức arr. indexOf và mảng. bao gồm có cú pháp tương tự và về cơ bản giống như đối tác chuỗi của chúng, nhưng hoạt động trên các mục thay vì ký tự
60 – tìm kiếmarr.splice[start[, deleteCount, elem1, ..., elemN]]
61 bắt đầu từ chỉ mụcarr.splice[start[, deleteCount, elem1, ..., elemN]]
62 và trả về chỉ mục nơi nó được tìm thấy, nếu không thìarr.splice[start[, deleteCount, elem1, ..., elemN]]
63arr.splice[start[, deleteCount, elem1, ..., elemN]]
64 – tìm kiếmarr.splice[start[, deleteCount, elem1, ..., elemN]]
61 bắt đầu từ chỉ mụcarr.splice[start[, deleteCount, elem1, ..., elemN]]
62, trả vềarr.splice[start[, deleteCount, elem1, ..., elemN]]
67 nếu tìm thấyarr.splice[start[, deleteCount, elem1, ..., elemN]]
Thông thường các phương thức này được sử dụng chỉ với một đối số.
arr.splice[start[, deleteCount, elem1, ..., elemN]]
61 để tìm kiếm. Theo mặc định, tìm kiếm là từ đầuVí dụ
arr.splice[start[, deleteCount, elem1, ..., elemN]]
6Xin lưu ý rằng
arr.splice[start[, deleteCount, elem1, ..., elemN]]
69 sử dụng đẳng thức nghiêm ngặt arr.splice[start[, deleteCount, elem1, ..., elemN]]
90 để so sánh. Vì vậy, nếu chúng ta tìm kiếm arr.splice[start[, deleteCount, elem1, ..., elemN]]
91, nó sẽ tìm thấy chính xác arr.splice[start[, deleteCount, elem1, ..., elemN]]
91 chứ không phải số 0Nếu chúng tôi muốn kiểm tra xem
arr.splice[start[, deleteCount, elem1, ..., elemN]]
61 có tồn tại trong mảng hay không và không cần chỉ mục, thì nên ưu tiên sử dụng arr.splice[start[, deleteCount, elem1, ..., elemN]]
94phương pháp mảng. lastIndexOf giống như
arr.splice[start[, deleteCount, elem1, ..., elemN]]
69, nhưng tìm kiếm từ phải sang tráiarr.splice[start[, deleteCount, elem1, ..., elemN]]
7Phương pháp
96 xử lý chính xác arr.splice[start[, deleteCount, elem1, ..., elemN]]
97arr.splice[start[, deleteCount, elem1, ..., elemN]]
Một tính năng nhỏ nhưng đáng chú ý của
arr.splice[start[, deleteCount, elem1, ..., elemN]]
96 là nó xử lý chính xác arr.splice[start[, deleteCount, elem1, ..., elemN]]
97, không giống như arr.splice[start[, deleteCount, elem1, ..., elemN]]
69arr.splice[start[, deleteCount, elem1, ..., elemN]]
8Đó là bởi vì
arr.splice[start[, deleteCount, elem1, ..., elemN]]
96 đã được thêm vào JavaScript muộn hơn nhiều và sử dụng thuật toán so sánh cập nhật hơn trong nội bộtìm và tìm Index/findLast Index
Hãy tưởng tượng chúng ta có một mảng các đối tượng. Làm thế nào để chúng ta tìm thấy một đối tượng với điều kiện cụ thể?
đây là mảng. phương thức find[fn] có ích
Cú pháp là
arr.splice[start[, deleteCount, elem1, ..., elemN]]
9Hàm được gọi lần lượt cho các phần tử của mảng
61 là phần tửarr.splice[start[, deleteCount, elem1, ..., elemN]]
03 là chỉ số của nóarr.splice[start[, deleteCount, elem1, ..., elemN]]
04 chính là mảng đóarr.splice[start[, deleteCount, elem1, ..., elemN]]
Nếu nó trả về
arr.splice[start[, deleteCount, elem1, ..., elemN]]
67, quá trình tìm kiếm bị dừng, arr.splice[start[, deleteCount, elem1, ..., elemN]]
61 được trả về. Nếu không tìm thấy gì, arr.splice[start[, deleteCount, elem1, ..., elemN]]
07 được trả lạiVí dụ: chúng tôi có một mảng người dùng, mỗi người có các trường
arr.splice[start[, deleteCount, elem1, ..., elemN]]
08 và arr.splice[start[, deleteCount, elem1, ..., elemN]]
09. Hãy tìm cái có arr.splice[start[, deleteCount, elem1, ..., elemN]]
10let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
0Trong thực tế, các mảng đối tượng là một điều phổ biến, vì vậy phương thức
arr.splice[start[, deleteCount, elem1, ..., elemN]]
11 rất hữu íchLưu ý rằng trong ví dụ này, chúng tôi cung cấp cho
arr.splice[start[, deleteCount, elem1, ..., elemN]]
11 hàm arr.splice[start[, deleteCount, elem1, ..., elemN]]
13 với một đối số. Đó là điển hình, các đối số khác của chức năng này hiếm khi được sử dụngcác mảng. Phương thức findIndex có cùng cú pháp, nhưng trả về chỉ mục nơi phần tử được tìm thấy thay vì chính phần tử đó. Giá trị của
arr.splice[start[, deleteCount, elem1, ..., elemN]]
63 được trả về nếu không tìm thấy gìcác mảng. Phương thức findLastIndex giống như
arr.splice[start[, deleteCount, elem1, ..., elemN]]
15, nhưng tìm kiếm từ phải sang trái, tương tự như arr.splice[start[, deleteCount, elem1, ..., elemN]]
16Đây là một ví dụ
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
1lọc
Phương thức
arr.splice[start[, deleteCount, elem1, ..., elemN]]
11 tìm kiếm một phần tử [đầu tiên] duy nhất làm cho hàm trả về arr.splice[start[, deleteCount, elem1, ..., elemN]]
67Nếu có thể có nhiều, chúng ta có thể sử dụng arr. bộ lọc [fn]
Cú pháp tương tự như
arr.splice[start[, deleteCount, elem1, ..., elemN]]
11, nhưng arr.splice[start[, deleteCount, elem1, ..., elemN]]
20 trả về một mảng gồm tất cả các phần tử phù hợplet arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
2Ví dụ
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
3Biến đổi một mảng
Hãy chuyển sang các phương thức chuyển đổi và sắp xếp lại một mảng
bản đồ
các mảng. phương pháp bản đồ là một trong những phương pháp hữu ích nhất và thường được sử dụng
Nó gọi hàm cho từng phần tử của mảng và trả về mảng kết quả
Cú pháp là
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
4Chẳng hạn, ở đây chúng tôi chuyển đổi từng phần tử thành chiều dài của nó
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
5sắp xếp [fn]
Cuộc gọi đến arr. sort[] sắp xếp mảng tại chỗ, thay đổi thứ tự phần tử của nó
Nó cũng trả về mảng đã sắp xếp, nhưng giá trị trả về thường bị bỏ qua, vì bản thân
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5 đã được sửa đổiVí dụ
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
6Bạn có nhận thấy bất cứ điều gì lạ trong kết quả?
Thứ tự đã trở thành
arr.splice[start[, deleteCount, elem1, ..., elemN]]
22. Không đúng. Nhưng tại sao?Các mục được sắp xếp theo chuỗi theo mặc định
Theo nghĩa đen, tất cả các phần tử được chuyển đổi thành chuỗi để so sánh. Đối với các chuỗi, thứ tự từ điển được áp dụng và thực sự là
arr.splice[start[, deleteCount, elem1, ..., elemN]]
23Để sử dụng thứ tự sắp xếp của riêng mình, chúng ta cần cung cấp một hàm làm đối số của
arr.splice[start[, deleteCount, elem1, ..., elemN]]
24Hàm sẽ so sánh hai giá trị tùy ý và trả về
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
7Chẳng hạn, để sắp xếp dưới dạng số
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
8Bây giờ nó hoạt động như dự định
Hãy bước sang một bên và suy nghĩ những gì đang xảy ra.
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5 có thể là mảng của bất cứ thứ gì, phải không? . Chúng tôi có một bộ một số mặt hàng. Để sắp xếp nó, chúng ta cần một hàm sắp xếp biết cách so sánh các phần tử của nó. Mặc định là thứ tự chuỗiPhương thức
arr.splice[start[, deleteCount, elem1, ..., elemN]]
26 triển khai thuật toán sắp xếp chung. Chúng tôi không cần quan tâm đến cách thức hoạt động bên trong của nó [hầu hết thời gian là một quicksort được tối ưu hóa hoặc Timsort]. Nó sẽ duyệt mảng, so sánh các phần tử của nó bằng cách sử dụng hàm được cung cấp và sắp xếp lại chúng, tất cả những gì chúng ta cần là cung cấp arr.splice[start[, deleteCount, elem1, ..., elemN]]
27 thực hiện phép so sánhNhân tiện, nếu chúng ta muốn biết những yếu tố nào được so sánh – không có gì ngăn cản việc cảnh báo chúng
let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
9Thuật toán có thể so sánh một phần tử với nhiều phần tử khác trong quy trình, nhưng nó cố gắng thực hiện càng ít phép so sánh càng tốt
Hàm so sánh có thể trả về bất kỳ số nào
Trên thực tế, một hàm so sánh chỉ được yêu cầu trả về một số dương để nói “lớn hơn” và một số âm để nói “ít hơn”
Điều đó cho phép viết các hàm ngắn hơn
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
00Chức năng mũi tên cho tốt nhất
Ghi nhớ chức năng mũi tên?
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
01Điều này hoạt động chính xác giống như phiên bản dài hơn ở trên
Sử dụng
28 cho chuỗiarr.splice[start[, deleteCount, elem1, ..., elemN]]
Nhớ thuật toán so sánh chuỗi?
Đối với nhiều bảng chữ cái, tốt hơn là sử dụng phương pháp
arr.splice[start[, deleteCount, elem1, ..., elemN]]
29 để sắp xếp chính xác các chữ cái, chẳng hạn như arr.splice[start[, deleteCount, elem1, ..., elemN]]
30Ví dụ: hãy sắp xếp một vài quốc gia bằng tiếng Đức
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
02đảo ngược
phương pháp mảng. đảo ngược đảo ngược thứ tự của các phần tử trong
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5Ví dụ
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
03Nó cũng trả về mảng
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5 sau khi đảo ngượctách và tham gia
Đây là tình huống từ cuộc sống thực. Chúng tôi đang viết một ứng dụng nhắn tin và người đó nhập danh sách người nhận được phân tách bằng dấu phẩy.
arr.splice[start[, deleteCount, elem1, ..., elemN]]
33. Nhưng đối với chúng tôi, một dãy tên sẽ thoải mái hơn nhiều so với một chuỗi. Làm thế nào để có được nó?các str. phương thức split[delim] thực hiện chính xác điều đó. Nó chia chuỗi thành một mảng bằng dấu phân cách đã cho
arr.splice[start[, deleteCount, elem1, ..., elemN]]
34Trong ví dụ bên dưới, chúng tôi chia tách bằng dấu phẩy theo sau là dấu cách
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
04Phương thức
arr.splice[start[, deleteCount, elem1, ..., elemN]]
35 có một đối số số thứ hai tùy chọn – giới hạn về độ dài mảng. Nếu nó được cung cấp, thì các phần tử bổ sung sẽ bị bỏ qua. Trong thực tế nó hiếm khi được sử dụng mặc dùlet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
05Chia thành các chữ cái
Cuộc gọi đến
arr.splice[start[, deleteCount, elem1, ..., elemN]]
36 với một arr.splice[start[, deleteCount, elem1, ..., elemN]]
37 trống sẽ chia chuỗi thành một mảng các chữ cáilet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
06mảng cuộc gọi. tham gia [keo] làm ngược lại với
arr.splice[start[, deleteCount, elem1, ..., elemN]]
35. Nó tạo ra một chuỗi gồm let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
5 mục được nối bởi arr.splice[start[, deleteCount, elem1, ..., elemN]]
40 giữa chúngVí dụ
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
07giảm/reduceRight
Khi chúng ta cần lặp lại một mảng – chúng ta có thể sử dụng
arr.splice[start[, deleteCount, elem1, ..., elemN]]
41, arr.splice[start[, deleteCount, elem1, ..., elemN]]
42 hoặc arr.splice[start[, deleteCount, elem1, ..., elemN]]
43Khi chúng ta cần lặp lại và trả về dữ liệu cho từng phần tử – chúng ta có thể sử dụng
arr.splice[start[, deleteCount, elem1, ..., elemN]]
44Các phương thức arr. giảm và sắp xếp. reduceRight cũng thuộc giống đó, nhưng phức tạp hơn một chút. Chúng được sử dụng để tính toán một giá trị duy nhất dựa trên mảng
Cú pháp là
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
08Hàm được áp dụng lần lượt cho tất cả các phần tử mảng và “mang” kết quả của nó đến lần gọi tiếp theo
Tranh luận
45 – là kết quả của lần gọi hàm trước, bằng vớiarr.splice[start[, deleteCount, elem1, ..., elemN]]
46 lần đầu tiên [nếu cung cấparr.splice[start[, deleteCount, elem1, ..., elemN]]
46]arr.splice[start[, deleteCount, elem1, ..., elemN]]
61 – là mục mảng hiện tạiarr.splice[start[, deleteCount, elem1, ..., elemN]]
03 – là vị trí của nóarr.splice[start[, deleteCount, elem1, ..., elemN]]
04 – là mảngarr.splice[start[, deleteCount, elem1, ..., elemN]]
Khi hàm được áp dụng, kết quả của lệnh gọi hàm trước được chuyển sang hàm tiếp theo dưới dạng đối số đầu tiên
Vì vậy, đối số đầu tiên về cơ bản là bộ tích lũy lưu trữ kết quả tổng hợp của tất cả các lần thực hiện trước đó. Và cuối cùng nó trở thành kết quả của
arr.splice[start[, deleteCount, elem1, ..., elemN]]
51Nghe có vẻ phức tạp?
Cách dễ nhất để nắm bắt đó là bằng ví dụ
Ở đây chúng tôi nhận được tổng của một mảng trong một dòng
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
09Hàm được truyền cho
arr.splice[start[, deleteCount, elem1, ..., elemN]]
51 chỉ sử dụng 2 đối số, như vậy là đủHãy xem chi tiết về những gì đang xảy ra
- Trong lần chạy đầu tiên,
53 là giá trị củaarr.splice[start[, deleteCount, elem1, ..., elemN]]
46 [đối số cuối cùng củaarr.splice[start[, deleteCount, elem1, ..., elemN]]
51], bằng vớiarr.splice[start[, deleteCount, elem1, ..., elemN]]
14, vàlet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
57 là phần tử mảng đầu tiên, bằng vớiarr.splice[start[, deleteCount, elem1, ..., elemN]]
9. Vậy kết quả hàm làlet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
9let arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
- Trong lần chạy thứ hai,
60, chúng tôi thêm phần tử mảng thứ hai [arr.splice[start[, deleteCount, elem1, ..., elemN]]
61] vào nó và trả vềarr.splice[start[, deleteCount, elem1, ..., elemN]]
- Ở lần chạy thứ 3,
62 và chúng tôi thêm một yếu tố nữa vào nó, v.v.arr.splice[start[, deleteCount, elem1, ..., elemN]]
Quy trình tính toán
Hoặc ở dạng bảng, trong đó mỗi hàng đại diện cho một lệnh gọi hàm trên phần tử mảng tiếp theo
arr.splice[start[, deleteCount, elem1, ..., elemN]]
53arr.splice[start[, deleteCount, elem1, ..., elemN]]
57kết quả cuộc gọi đầu tiênlet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
14let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
9let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
9cuộc gọi thứ hailet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
9arr.splice[start[, deleteCount, elem1, ..., elemN]]
61arr.splice[start[, deleteCount, elem1, ..., elemN]]
70cuộc gọi thứ baarr.splice[start[, deleteCount, elem1, ..., elemN]]
70arr.splice[start[, deleteCount, elem1, ..., elemN]]
70arr.splice[start[, deleteCount, elem1, ..., elemN]]
73cuộc gọi thứ tưarr.splice[start[, deleteCount, elem1, ..., elemN]]
73arr.splice[start[, deleteCount, elem1, ..., elemN]]
75arr.splice[start[, deleteCount, elem1, ..., elemN]]
76cuộc gọi thứ nămarr.splice[start[, deleteCount, elem1, ..., elemN]]
76arr.splice[start[, deleteCount, elem1, ..., elemN]]
78arr.splice[start[, deleteCount, elem1, ..., elemN]]
79Ở đây chúng ta có thể thấy rõ kết quả của cuộc gọi trước đó trở thành đối số đầu tiên của cuộc gọi tiếp theo như thế nào
Chúng ta cũng có thể bỏ qua giá trị ban đầu
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
20Kết quả là như nhau. Đó là bởi vì nếu không có phần tử đầu tiên, thì
arr.splice[start[, deleteCount, elem1, ..., elemN]]
51 sẽ lấy phần tử đầu tiên của mảng làm giá trị ban đầu và bắt đầu lặp lại từ phần tử thứ 2Bảng tính giống như trên, trừ hàng đầu tiên
Nhưng việc sử dụng như vậy đòi hỏi phải hết sức cẩn thận. Nếu mảng trống, thì cuộc gọi
arr.splice[start[, deleteCount, elem1, ..., elemN]]
51 không có giá trị ban đầu sẽ báo lỗiĐây là một ví dụ
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
21Vì vậy, bạn nên luôn chỉ định giá trị ban đầu
phương pháp mảng. reduceRight làm tương tự, nhưng đi từ phải sang trái
Mảng. làArray
Mảng không tạo thành một loại ngôn ngữ riêng biệt. Chúng dựa trên các đối tượng
Vì vậy,
arr.splice[start[, deleteCount, elem1, ..., elemN]]
82 không giúp phân biệt một đối tượng đơn giản với một mảnglet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
22…Nhưng mảng được sử dụng thường xuyên đến mức có một phương pháp đặc biệt cho việc đó. Mảng. isArray[giá trị]. Nó trả về
arr.splice[start[, deleteCount, elem1, ..., elemN]]
67 nếu arr.splice[start[, deleteCount, elem1, ..., elemN]]
84 là một mảng và arr.splice[start[, deleteCount, elem1, ..., elemN]]
91 nếu ngược lạilet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
23Hầu hết các phương thức đều hỗ trợ “thisArg”
Hầu như tất cả các phương thức mảng gọi hàm – như
arr.splice[start[, deleteCount, elem1, ..., elemN]]
11, arr.splice[start[, deleteCount, elem1, ..., elemN]]
20, arr.splice[start[, deleteCount, elem1, ..., elemN]]
44, ngoại trừ đáng chú ý là arr.splice[start[, deleteCount, elem1, ..., elemN]]
89, đều chấp nhận tham số bổ sung tùy chọn arr.splice[start[, deleteCount, elem1, ..., elemN]]
90Tham số đó không được giải thích trong các phần trên, vì nó ít được sử dụng. Nhưng để hoàn thiện, chúng ta phải che đậy nó
Đây là cú pháp đầy đủ của các phương thức này
let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
24Giá trị của tham số
arr.splice[start[, deleteCount, elem1, ..., elemN]]
90 trở thành arr.splice[start[, deleteCount, elem1, ..., elemN]]
92 cho arr.splice[start[, deleteCount, elem1, ..., elemN]]
93Ví dụ: ở đây chúng tôi sử dụng một phương thức của đối tượng
arr.splice[start[, deleteCount, elem1, ..., elemN]]
94 làm bộ lọc và arr.splice[start[, deleteCount, elem1, ..., elemN]]
90 chuyển ngữ cảnhlet arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
25Nếu trong ví dụ trên chúng ta sử dụng
arr.splice[start[, deleteCount, elem1, ..., elemN]]
96, thì arr.splice[start[, deleteCount, elem1, ..., elemN]]
97 sẽ được gọi như một hàm độc lập, với arr.splice[start[, deleteCount, elem1, ..., elemN]]
98, do đó dẫn đến lỗi ngay lập tứcMột cuộc gọi đến
arr.splice[start[, deleteCount, elem1, ..., elemN]]
99 có thể được thay thế bằng let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
00, điều đó cũng tương tự. Cái sau được sử dụng thường xuyên hơn, vì nó dễ hiểu hơn một chút đối với hầu hết mọi ngườiTóm lược
Một cheat sheet của các phương pháp mảng
Để thêm/xóa các phần tử
01 – thêm các mục vào cuối,let arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
02 – trích xuất một mục từ cuối,let arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
03 – trích xuất một mục từ đầu,let arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
04 – thêm các mục vào đầulet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
05 – tại chỉ mụclet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
06 xóa các phần tửlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
7 và chènlet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
08let arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
09 – tạo một mảng mới, sao chép các phần tử từ chỉ sốlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
6 đếnlet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
17 [không bao gồm] vào đólet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
12 – trả về một mảng mới. sao chép tất cả các thành viên của cái hiện tại và thêmlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
08 vào nó. Nếu bất kỳlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
08 nào là một mảng, thì các phần tử của nó được lấylet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
Để tìm kiếm giữa các yếu tố
15 – tìm kiếmlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
61 bắt đầu từ vị tríarr.splice[start[, deleteCount, elem1, ..., elemN]]
06, trả lại chỉ mục hoặclet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
63 nếu không tìm thấyarr.splice[start[, deleteCount, elem1, ..., elemN]]
19 – trả vềlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
67 nếu mảng cóarr.splice[start[, deleteCount, elem1, ..., elemN]]
84, ngược lại làarr.splice[start[, deleteCount, elem1, ..., elemN]]
91arr.splice[start[, deleteCount, elem1, ..., elemN]]
23 – lọc các phần tử thông qua hàm, trả về giá trị đầu tiên/tất cả khiến nó trả vềlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
67arr.splice[start[, deleteCount, elem1, ..., elemN]]
15 giống nhưarr.splice[start[, deleteCount, elem1, ..., elemN]]
11, nhưng trả về chỉ mục thay vì giá trịarr.splice[start[, deleteCount, elem1, ..., elemN]]
Để lặp qua các phần tử
27 – gọilet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
93 cho mọi phần tử, không trả về bất cứ thứ gìarr.splice[start[, deleteCount, elem1, ..., elemN]]
Để biến đổi mảng
29 – tạo một mảng mới từ kết quả của việc gọilet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
93 cho mọi phần tửarr.splice[start[, deleteCount, elem1, ..., elemN]]
31 – sắp xếp mảng tại chỗ, sau đó trả về nólet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
32 – đảo ngược mảng tại chỗ, sau đó trả về nólet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
33 – chuyển đổi một chuỗi thành mảng và ngược lạilet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
34 – tính toán một giá trị duy nhất trên mảng bằng cách gọilet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
93 cho từng phần tử và chuyển kết quả trung gian giữa các lệnh gọiarr.splice[start[, deleteCount, elem1, ..., elemN]]
Ngoài ra
36 kiểm tralet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
84 có phải là một mảng không, nếu vậy trả vềarr.splice[start[, deleteCount, elem1, ..., elemN]]
67, nếu không thì trả vềarr.splice[start[, deleteCount, elem1, ..., elemN]]
91arr.splice[start[, deleteCount, elem1, ..., elemN]]
Xin lưu ý rằng các phương thức
arr.splice[start[, deleteCount, elem1, ..., elemN]]
89, let arr = ["I", "study", "JavaScript"];
arr.splice[1, 1]; // from index 1 remove 1 element
alert[ arr ]; // ["I", "JavaScript"]
41 và let arr = ["I", "study", "JavaScript"];
// from index 2
// delete 0
// then insert "complex" and "language"
arr.splice[2, 0, "complex", "language"];
alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
11 tự sửa đổi mảngNhững phương pháp này là những phương pháp được sử dụng nhiều nhất, chúng bao gồm 99% các trường hợp sử dụng. Nhưng có rất ít người khác
mảng. một số[fn]/mảng. every[fn] kiểm tra mảng
Hàm
27 được gọi trên từng phần tử của mảng tương tự như hàmarr.splice[start[, deleteCount, elem1, ..., elemN]]
44. Nếu bất kỳ/tất cả kết quả làarr.splice[start[, deleteCount, elem1, ..., elemN]]
67, trả vềarr.splice[start[, deleteCount, elem1, ..., elemN]]
67, nếu không thìarr.splice[start[, deleteCount, elem1, ..., elemN]]
91arr.splice[start[, deleteCount, elem1, ..., elemN]]
Các phương thức này hoạt động giống như toán tử
48 vàlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
49. nếulet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
27 trả về một giá trị trung thực, thìarr.splice[start[, deleteCount, elem1, ..., elemN]]
51 ngay lập tức trả vềlet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
67 và ngừng lặp lại các mục còn lại;arr.splice[start[, deleteCount, elem1, ..., elemN]]
Chúng ta có thể sử dụng
56 để so sánh các mảnglet arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
26let arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
mảng. fill[value, start, end] – điền vào mảng bằng cách lặp lại
84 từ chỉ mụcarr.splice[start[, deleteCount, elem1, ..., elemN]]
6 đếnlet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
17let arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
mảng. copyWithin[đích, bắt đầu, kết thúc] – sao chép các phần tử của nó từ vị trí
6 đến vị trílet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
17 vào chính nó, tại vị trílet arr = ["I", "study", "JavaScript"]; // from index 2 // delete 0 // then insert "complex" and "language" arr.splice[2, 0, "complex", "language"]; alert[ arr ]; // "I", "study", "complex", "language", "JavaScript"
62 [ghi đè hiện có]let arr = ["I", "study", "JavaScript"]; arr.splice[1, 1]; // from index 1 remove 1 element alert[ arr ]; // ["I", "JavaScript"]
mảng. phẳng [độ sâu]/arr. flatMap[fn] tạo mảng phẳng mới từ mảng đa chiều
Để biết danh sách đầy đủ, hãy xem hướng dẫn
Ngay từ cái nhìn đầu tiên, có vẻ như có rất nhiều phương pháp, khá khó nhớ. Nhưng thực ra điều đó dễ dàng hơn nhiều
Xem qua cheat sheet chỉ để biết về chúng. Sau đó giải quyết các nhiệm vụ của chương này để thực hành, để bạn có kinh nghiệm với các phương thức mảng
Sau này, bất cứ khi nào bạn cần làm gì đó với một mảng, và bạn không biết làm thế nào – hãy đến đây, xem cheat sheet và tìm phương pháp phù hợp. Ví dụ sẽ giúp bạn viết nó một cách chính xác. Bạn sẽ sớm tự động ghi nhớ các phương pháp mà không cần nỗ lực cụ thể từ phía bạn