Mảng JavaScript Đối tượng được sử dụng để thu thập nhiều loại dữ liệu trong một biến duy nhất. Mảng là các đối tượng kiểu danh sách trong Kiểu dữ liệu tham chiếu trong JavaScript. Chúng là các đối tượng tích hợp để lưu trữ nhiều dữ liệu
Mảng là bộ sưu tập được lập chỉ mục trong javascript
Trong JavaScript, Mảng có thể lưu trữ nhiều dữ liệu trong một biến. Nhưng trong các ngôn ngữ lập trình được gõ nghiêm ngặt, Mảng chỉ có thể lưu trữ một kiểu dữ liệu duy nhất. Điều này có nghĩa là, trong JavaScript, mảng có thể lưu trữ bất kỳ loại dữ liệu nào. Mảng JavaScript có thể lưu trữ cả chuỗi, số hoặc bất kỳ kiểu dữ liệu nào khác trong cùng một mảng
Cách khai báo Array trong JavaScript
Mảng trong JavaScript có thể được khai báo bằng dấu ngoặc [] hoặc hàm tạo Array() mới. Cả [] và new Array() đều hoạt động giống nhau. new Array() là dạng hàm tạo và dấu ngoặc [] là dạng chữ của Array
Mảng chữ
let month=[]; // blank Array
Trình tạo mảng
let month=new Array(); // blank ArrayTất cả các mảng được khai báo bằng cách sử dụng let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 9 hoặc let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 0 là thể hiện của Lớp hoặc Hàm Mảng. Hàm let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 1 trong JavaScript
let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 2 hoặc let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 3 luôn sai trong javascript
Kiểm tra kiểu dữ liệu Mảng
Mảng là kiểu dữ liệu Reference. toán tử typeof sẽ trả về "đối tượng". Để kiểm tra kiểu dữ liệu của một mảng, hãy sử dụng Array. hàm hoặc phương thức isArray(). Mảng. Hàm isArray() sẽ xác định giá trị truyền vào có phải là Array hay không
let x=[]; typeof x; // return "object" Array.isArray(x); // return true
Các giá trị duyệt của mảng
Để kiểm tra phần tử bên trong mảng, chúng ta có thể gọi mảng theo sau là giá trị chỉ số trong ngoặc. Để tìm phần tử đầu tiên, hãy gọi mảng[0]. Ký hiệu chỉ mục này bắt đầu từ 0 đến mảng. chiều dài-1
________số 8_______
mảng. chiều dài
mảng. Thuộc tính độ dài được sử dụng để kiểm tra tổng số phần tử bên trong mảng. Độ dài mặc định bằng 0, đối với một mảng trống. Đối với một Mảng không trống, mảng. chiều dài là số dương
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3;
Trong JavaScript, độ dài mảng có thể thay đổi. Điều này có nghĩa là chúng ta có thể thay đổi độ dài của một mảng theo cách thủ công. Nếu độ dài mặc định là 3 và chúng tôi gán mảng. chiều dài = 5, chiều dài mới của mảng sẽ là 5 với hai không xác định
let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty
Phương thức mảng
Trong JavaScript, Mảng được sử dụng để lưu trữ nhiều dữ liệu bên trong một biến. Mảng có thuộc tính là phương thức. Mảng. chiều dài là thuộc tính Mảng. Bây giờ chúng ta sẽ thảo luận về các phương thức mảng
loại()
mảng. sort() sẽ sắp xếp thứ tự một mảng. Điều này sẽ thay đổi thứ tự bảng chữ cái của một mảng. mảng. sort() cũng sẽ thay đổi thứ tự của một mảng vĩnh viễn
const days=["sun","mon","tues","wed","thurs","fri","sat"]; days.sort(); days // return ["fri", "mon", "sat", "sun", "thurs", "tues", "wed"]
phương thức sắp xếp cũng sẽ sắp xếp mảng số theo thứ tự bảng chữ cái
const i=[1,2,3,10,20]; i.sort(); i; return [1,10,2,20,3];
Sắp xếp mảng số
Để sắp xếp mảng số, truyền hàm gọi lại trong phương thức sắp xếp
let i=[1,2,3,10,20]; function srt(a,b){ return a-b }; i.sort(srt); console.log(i); //return [1,2,3,10,20];
đảo ngược()
mảng. phương thức reverse() được sử dụng để đảo ngược một mảng. điều này sẽ đưa phần tử cuối cùng đến phần tử đầu tiên và phần tử đầu tiên cuối cùng
let days=["sun","mon","tues","wed","thurs","fri","sat"]; days.reverse(); days; // ["sat", "fri", "thurs", "wed", "tues", "mon", "sun"]
Chỉ số()
mảng. Phương thức indexOf() dùng để kiểm tra chỉ số của phần tử đầu tiên trong mảng
let month=new Array(); // blank Array 0
sử dụng mảng. lastIndexOf() để kiểm tra chỉ số cuối cùng của một phần tử trong mảng
sự thay đổi
mảng. Phương thức shift() được sử dụng để xóa phần tử đầu tiên khỏi mảng. Điều này sẽ làm giảm độ dài của mảng đi 1 khi phần tử đầu tiên bị xóa
let month=new Array(); // blank Array 1
không dịch chuyển
mảng. phương thức unshift() được sử dụng để thêm phần tử đầu tiên vào một mảng. Điều này sẽ tăng độ dài mảng lên 1 khi một phần tử được thêm vào chỉ số 0
let month=new Array(); // blank Array 2
nhạc pop
mảng. Phương thức pop() được sử dụng để loại bỏ phần tử cuối cùng khỏi một mảng. Điều này cũng sẽ giảm độ dài mảng xuống 1 khi phần tử cuối cùng bị xóa
let month=new Array(); // blank Array 3
xô
mảng. Phương thức push() được sử dụng để thêm một phần tử vào vị trí cuối cùng của mảng. Điều này cũng sẽ tăng chiều dài mảng lên 1 khi một phần tử được thêm vào
let month=new Array(); // blank Array 4
mối nối
mảng. Phương thức splice() được sử dụng để thêm hoặc bớt n phần tử khỏi một mảng tại bất kỳ vị trí nào. Điều này cũng sẽ tăng hoặc giảm độ dài mảng theo n khi thêm hoặc bớt n phần tử
let month=new Array(); // blank Array 5
các phương thức pop, push, shift, unshift và splice có thể thao tác dữ liệu mảng
lát cắt
mảng. phương thức slice() được sử dụng để cắt một phần tử từ mảng. Điều này sẽ không thay đổi mảng thực tế. lát cắt có thể trả về một phần tử nếu tham số được truyền là một phần tử. Đối với hai tham số (x, y), lát cắt có thể trả về các phần tử y-x
let month=new Array(); // blank Array 6
tham gia
mảng. Phương thức join() được sử dụng để chuyển đổi một mảng thành chuỗi với tất cả các phần tử bên trong mảng, được phân tách bằng dấu phẩy. Để thay đổi dấu phân cách mặc định từ dấu phẩy sang bất kỳ ký tự nào khác bằng cách chuyển ký tự đó bên trong dấu ngoặc đơn
let month=new Array(); // blank Array 7
concat
mảng. phương thức concat() được sử dụng để hợp nhất hoặc nối một mảng với một mảng khác. Sau khi join ta được một mảng mới
let month=new Array(); // blank Array 8
concat sử dụng toán tử lây lan es6
Trong ES6, chúng ta cũng có thể sử dụng toán tử trải phổ, i. e let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 4 để nối các phần tử mảng
let month=new Array(); // blank Array 9
phương pháp phẳng
Mảng. phương thức phẳng () tạo một mảng mới từ các mảng lồng nhau hiện có cho đến độ sâu cụ thể
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 0
độ sâu bằng phẳng
chúng ta có thể tùy chọn chuyển tham số độ sâu trong phương thức phẳng để chỉ định độ sâu của mảng lồng nhau sẽ được làm phẳng
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 1Phương pháp mảng nâng cao
Dưới đây là một số phương thức mảng nâng cao được sử dụng trong mảng javascript
Bản đồ
Mảng. phương thức map() tạo một mảng mới bằng cách sử dụng một mảng hiện có và đầu ra của hàm gọi lại trong phương thức bản đồ. Hàm gọi lại được yêu cầu trong phương thức bản đồ với tham số để lặp lại từng phần tử
[2,4,6]
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 2[1,4,9,16]
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 3Giảm
Mảng. phương thức reduce() giảm mảng thành một giá trị duy nhất bằng cách chuyển hàm gọi lại. Ví dụ, chúng ta có thể sử dụng phương thức rút gọn để tính tổng tất cả các phần tử trong một mảng
Tính tổng bằng phương pháp rút gọn
10
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 4Nhân sử dụng phương pháp rút gọn
24
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 5Lọc
Mảng. phương thức bộ lọc tạo một mảng mới với dữ liệu được lọc từ cuộc gọi lại
Lọc chuỗi theo độ dài
["thứ ba", "thứ năm"]
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 6Lọc số lớn hơn
[5,7,9]
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 7Lọc số chẵn
[10,4,22]
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 8tìm thấy
Mảng. phương thức find trả về phần tử khớp đầu tiên trong mảng đã cho dựa trên điều kiện. Phương thức này sẽ lặp qua mảng và trả về phần tử khớp đầu tiên
5
let x=[]; typeof x; // return "object" Array.isArray(x); // return true 91
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 0tìm Index
Mảng. Phương thức findIndex trả về chỉ mục của phần tử khớp đầu tiên trong mảng đã cho dựa trên điều kiện. Phương thức này sẽ lặp qua mảng và trả về phần tử khớp đầu tiên
2
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 13
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 2lấp đầy
Mảng. điền vào các phần tử mảng với một giá trị tĩnh. Chúng tôi cũng có thể đặt chỉ mục bắt đầu và chỉ mục kết thúc bằng tham số thứ 2 và thứ 3
[0,0,0,0,0]
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 3[1,3,0,0,0]
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 4[1,3,0,0,9]
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 5một số
Mảng. một số phương thức kiểm tra xem ít nhất một phần tử trong mảng đã cho có đáp ứng điều kiện kiểm tra trong cuộc gọi lại hay không. Đầu ra có thể là let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 5 hoặc let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 6
sai
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 6sai
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 7ĐÚNG VẬY
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 8mỗi
Mảng. mọi phương thức kiểm tra xem tất cả các phần tử trong mảng đã cho có đáp ứng điều kiện kiểm tra trong cuộc gọi lại hay không. Điều này cũng sẽ trả về let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 5 hoặc let days=["sun","mon","tues"]; days.length; //return 3 days.length=5; days.length; //return 5 days //return ["sun","mon","tues",,] 2 empty days.length=6; days.length; //return 6 days //return ["sun","mon","tues",,,] 3 empty 6
ĐÚNG VẬY
let days=["sun","mon","tues"]; days[0]; return "sun"; days[1]; return "mon"; days[2]; return "tues"; days[3]; return undefined; 9ĐÚNG VẬY
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 0sai
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 1Lặp lại mảng
Có nhiều cách khác nhau để lặp lại một mảng trong JavaScript. Dưới đây là danh sách các phương thức mảng và các vòng lặp có sẵn để lặp lại dữ liệu mảng
cho mỗi
Phương thức forEach được sử dụng để lấy từng phần tử trong mảng mà không cần sử dụng vòng lặp. Hàm gọi lại được thêm dưới dạng tham số trong forEach
Lấy tất cả các phần tử từ mảng bằng forEach
mặt trời
Thứ hai
thứ ba
Thứ Tư
thứ năm
bạn bè
Đã ngồi
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 2Lấy tất cả các phần tử có chỉ mục từ mảng bằng forEach
mặt trời 0
thứ 2
thứ ba 2
đám cưới 3
thứ năm 4
thứ 5
ngồi 6
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 3Cho trong mảng vòng lặp
Vòng lặp for in còn dùng cho mảng lấy từng phần tử một. Ưu điểm của vòng lặp for in đơn giản hơn là vòng lặp for in yêu cầu khởi tạo biến và tên mảng. Tăng là không cần thiết. Xem ví dụ
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 4
Đối với mảng vòng lặp
Phương thức forEach là tốt nhất để duyệt qua các mảng vì giá trị của i trong hàm gọi lại là mỗi phần tử. Vòng lặp for cũng tốt, nhưng để lấy phần tử thì phải dùng array[i]. Bây giờ chúng ta có các tính năng forEach trong vòng lặp for bằng cách sử dụng For of
Vòng lặp for trong ES6 trả về phần tử mảng, thay vì chỉ mục
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 5
Dữ liệu mảng liên kết được chọn thả xuống
Ngày.
let x=[]; let y=["jan","feb","mar"]; x.length; return 0; y.length; return 3; 6Mảng đa chiều
Mảng đa chiều có nghĩa là một Mảng bên trong một mảng khác hoặc một mảng của các mảng. Chúng ta có thể lưu trữ n số mảng bên trong mảng