Menu
×

Được chứng nhận

Ghi lại kiến ​​thức của bạn

Đăng nhập Đăng ký

Tạo Tài khoản Example.com.vn miễn phí để cải thiện trải nghiệm học tập của bạn

Người tìm đường và việc học của tôi

Theo dõi tiến độ học tập của bạn tại Example.com.vn và thu thập phần thưởng

Nâng cấp

Trở thành người dùng PLUS và mở khóa các tính năng mạnh mẽ (không có quảng cáo, lưu trữ, hỗ trợ, ..)

Bắt đầu từ đâu

Bạn không chắc chắn muốn bắt đầu từ đâu? Đi theo con đường được hướng dẫn của chúng tôi

Trình chỉnh sửa mã (Dùng thử)

Với trình chỉnh sửa mã trực tuyến của chúng tôi, bạn có thể chỉnh sửa mã và xem kết quả trong trình duyệt của mình

Video

Tìm hiểu những điều cơ bản về HTML qua video hướng dẫn thú vị và hấp dẫn

Mẫu

Chúng tôi đã tạo một loạt mẫu trang web đáp ứng mà bạn có thể sử dụng - miễn phí!

Web hosting

Lưu trữ trang web của riêng bạn và chia sẻ nó với mọi người với Example.com.vn Spaces

Tạo một máy chủ

Tạo máy chủ của riêng bạn bằng Python, PHP, React.js, Node.js, Java, C#, v.v.

Làm thế nào để

Bộ sưu tập lớn các đoạn mã cho HTML, CSS và JavaScript

Khung CSS

Xây dựng các trang web nhanh và phản hồi bằng cách sử dụng khung W3.CSS miễn phí của chúng tôi

Thống kê trình duyệt

Đọc xu hướng dài hạn của việc sử dụng trình duyệt

Tốc độ gõ

Kiểm tra tốc độ đánh máy của bạn

Đào tạo AWS

Tìm hiểu dịch vụ web của Amazon

Bộ chọn màu

Sử dụng công cụ chọn màu của chúng tôi để tìm các màu RGB, HEX và HSL khác nhau. Bánh xe màu hình tròn thể hiện sự chuyển màu của màu trong quang phổ

Trò chơi mã

Trò chơi mã hóa W3Schools! Giúp linh miêu thu thập nón thông Logo Lynx

Đặt mục tiêu

Nhận hành trình học tập được cá nhân hóa dựa trên các kỹ năng và mục tiêu hiện tại của bạn

Bản tin

Tham gia bản tin của chúng tôi và có quyền truy cập vào nội dung độc quyền mỗi tháng

Việc làm

Thuê những tài năng công nghệ hàng đầu. Hợp lý hóa quy trình tuyển dụng của bạn để có đội ngũ phù hợp hoàn hảo

Lớp học

Hãy liên hệ để sử dụng Example.com.vn Plus và các chứng chỉ với tư cách là một tổ chức giáo dục

×
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP CÁCH W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS R TYPESCRIPT ANGULAR GIT POSTGRESQL MONGODB ASP AI GO KOTLIN SASS VUE DSA GEN AI SCIPY AWS AN NINH MẠNG DỮ LIỆU KHOA HỌC

Hướng dẫn về JS

JS HOME Giới thiệu JS JS Nơi xuất ra JS Câu lệnh JS JS Cú pháp JS Nhận xét JS Biến JS Let JS Const Toán tử JS JS Số học Phép gán JS Kiểu dữ liệu JS Hàm JS Đối tượng JS Sự kiện JS Chuỗi JS Phương thức chuỗi JS Tìm kiếm chuỗi JS Mẫu chuỗi JS Số JS Số JS BigInt JS Phương thức số Thuộc tính số JS Mảng JS Phương thức mảng JS Tìm kiếm mảng JS Sắp xếp mảng JS Lặp lại JS Mảng Const JS Ngày tháng JS Định dạng ngày JS Ngày Nhận phương thức JS Phương thức đặt ngày JS Toán học JS ngẫu nhiên JS Booleans JS So sánh JS Nếu khác JS Switch Vòng lặp JS cho JS Vòng lặp cho trong JS Vòng lặp cho vòng lặp JS Trong khi JS Break JS Iterables JS Bộ JS Set Methods JS Maps JS Map Methods JS Typeof JS Type Chuyển đổi JS Bitwise JS RegExp JS Ưu tiên JS Lỗi JS Phạm vi JS Hoisting JS Chế độ nghiêm ngặt JS cái này Từ khóa JS Mũi tên Chức năng Các lớp JS Mô-đun JS JS JSON JS Gỡ lỗi Hướng dẫn về phong cách JS Các phương pháp hay nhất về JS Các sai lầm về JS Hiệu suất JS Các từ dành riêng cho JS

Phiên bản JS

Phiên bản JS JS 2009 (ES5) JS 2015 (ES6) JS 2016 JS 2017 JS 2018 JS 2019 JS 2020 JS 2021 JS 2022 JS 2023 JS IE / Edge JS Lịch sử

Đối tượng JS

Định nghĩa đối tượng Thuộc tính đối tượng Phương thức đối tượng Hiển thị đối tượng Trình truy cập đối tượng Trình tạo đối tượng Nguyên mẫu đối tượng Quản lý đối tượng Bảo vệ đối tượng

Hàm JS

Định nghĩa hàm Tham số hàm Chức năng Gọi hàm Gọi hàm Áp dụng hàm Liên kết hàm Đóng

Các lớp JS

Lớp Giới thiệu Lớp Kế thừa Lớp Tĩnh

JS không đồng bộ

Lệnh gọi lại JS JS không đồng bộ JS hứa hẹn JS Async/Await

DOM HTML

Giới thiệu DOM Các phương thức DOM Tài liệu DOM Phần tử DOM DOM HTML Biểu mẫu DOM DOM CSS DOM Ảnh động DOM Sự kiện DOM Trình nghe sự kiện Điều hướng DOM Nút DOM Bộ sưu tập DOM Danh sách nút DOM

BOM trình duyệt JS

Cửa sổ JS Màn hình JS Vị trí JS Lịch sử JS JS Điều hướng JS Cảnh báo bật lên JS Thời gian JS Cookies JS

API Web JS

API Web Giới thiệu API biểu mẫu web API lịch sử web API lưu trữ web API công nhân web API tìm nạp web API định vị địa lý web

JS AJAX

AJAX Giới thiệu AJAX XMLHttp AJAX Yêu cầu AJAX Phản hồi Tệp XML AJAX PHP AJAX ASP AJAX Cơ sở dữ liệu AJAX Ứng dụng AJAX Ví dụ về AJAX

JSON JSON

Giới thiệu JSON Cú pháp JSON JSON và XML Các kiểu dữ liệu JSON Phân tích cú pháp JSON JSON xâu chuỗi các đối tượng JSON Mảng JSON Máy chủ JSON JSON PHP JSON HTML JSON JSONP

JS và jQuery

Bộ chọn jQuery jQuery HTML jQuery CSS jQuery DOM

Đồ họa JS

JS Graphics JS Canvas JS Plotly JS Chart.js JS Google Chart JS D3.js

Ví dụ về JS

Ví dụ về JS JS HTML DOM JS Đầu vào HTML JS Đối tượng HTML JS Sự kiện HTML Trình duyệt JS Trình soạn thảo JS Bài tập JS Câu đố JS Trang web JS Chuẩn bị phỏng vấn JS Bootcamp Chứng chỉ JS

Tài liệu tham khảo JS

Đối tượng JavaScript Đối tượng DOM HTML


Mảng JavaScript

Mảng là một biến đặc biệt, có thể chứa nhiều giá trị:

const cars = ["Saab", "Volvo", "BMW"];
Hãy tự mình thử »

Tại sao nên sử dụng mảng?

Nếu bạn có một danh sách các mục (ví dụ: danh sách tên ô tô), việc lưu trữ ô tô theo các biến đơn lẻ có thể trông như thế này:

let car1 = "Saab";
let car2 = "Volvo";
let car3 = "BMW";

Tuy nhiên, nếu bạn muốn đi vòng qua các ô tô và tìm một chiếc cụ thể thì sao? Và nếu bạn không có 3 chiếc ô tô mà là 300 chiếc thì sao?

Giải pháp là một mảng!

Một mảng có thể chứa nhiều giá trị dưới một tên duy nhất và bạn có thể truy cập các giá trị đó bằng cách tham chiếu đến số chỉ mục.


Tạo một mảng

Sử dụng một mảng bằng chữ là cách dễ nhất để tạo một mảng JavaScript.

Cú pháp:

const array_name = [ item1 , item2 , ...];      

Thông thường, người ta khai báo mảng bằng từ khóa const .

Tìm hiểu thêm về const với mảng trong chương: JS Array Const .

Ví dụ

const cars = ["Saab", "Volvo", "BMW"];
Hãy tự mình thử »

Dấu cách và ngắt dòng không quan trọng. Một khai báo có thể trải rộng trên nhiều dòng:

Ví dụ

const cars = [
  "Saab",
  "Volvo",
  "BMW"
];
Hãy tự mình thử »

Bạn cũng có thể tạo một mảng rồi cung cấp các phần tử:

Ví dụ

const cars = [];
cars[0]= "Saab";
cars[1]= "Volvo";
cars[2]= "BMW";
Hãy tự mình thử »

Sử dụng từ khóa JavaScript mới

Ví dụ sau cũng tạo một Mảng và gán các giá trị cho nó:

Ví dụ

const cars = new Array("Saab", "Volvo", "BMW");
Hãy tự mình thử »

Hai ví dụ trên thực hiện giống hệt nhau.

Không cần sử dụng new Array() .

Để đơn giản, dễ đọc và tốc độ thực thi, hãy sử dụng phương thức mảng.



Truy cập các phần tử mảng

Bạn truy cập một phần tử mảng bằng cách tham khảo số chỉ mục :

const cars = ["Saab", "Volvo", "BMW"];
let car = cars[0];
Hãy tự mình thử »

Lưu ý: Chỉ mục mảng bắt đầu bằng 0.

[0] là phần tử đầu tiên. [1] là phần tử thứ hai.


Thay đổi một phần tử mảng

Câu lệnh này thay đổi giá trị của phần tử đầu tiên trong cars :

cars[0] = "Opel";

Ví dụ

const cars = ["Saab", "Volvo", "BMW"];
cars[0] = "Opel";
Hãy tự mình thử »

Chuyển đổi một mảng thành một chuỗi

Phương thức JavaScript toString() chuyển đổi một mảng thành một chuỗi các giá trị mảng (được phân tách bằng dấu phẩy).

Ví dụ

const fruits = ["Banana", "Orange", "Apple", "Mango"];
document.getElementById("demo").innerHTML = fruits.toString();

Kết quả:

Banana,Orange,Apple,Mango
Hãy tự mình thử »

Truy cập toàn bộ mảng

Với JavaScript, toàn bộ mảng có thể được truy cập bằng cách tham khảo tên mảng:

Ví dụ

const cars = ["Saab", "Volvo", "BMW"];
document.getElementById("demo").innerHTML = cars;
Hãy tự mình thử »

Mảng là đối tượng

Mảng là một loại đối tượng đặc biệt. Toán typeof trong JavaScript trả về "đối tượng" cho mảng.

Tuy nhiên, mảng JavaScript được mô tả tốt nhất dưới dạng mảng.

Mảng sử dụng số để truy cập vào "các phần tử" của nó. Trong ví dụ này, person[0] trả về John:

Mảng:

const person = ["John", "Doe", 46];
Hãy tự mình thử »

Các đối tượng sử dụng tên để truy cập "thành viên" của nó. Trong ví dụ này, person.firstName trả về John:

Sự vật:

const person = {firstName:"John", lastName:"Doe", age:46};
Hãy tự mình thử »

Các phần tử mảng có thể là đối tượng

Các biến JavaScript có thể là đối tượng. Mảng là loại đối tượng đặc biệt.

Vì điều này, bạn có thể có các biến thuộc các loại khác nhau trong cùng một Mảng.

Bạn có thể có các đối tượng trong một mảng. Bạn có thể có các hàm trong một mảng. Bạn có thể có mảng trong một mảng:

myArray[0] = Date.now;
myArray[1] = myFunction;
myArray[2] = myCars;

Thuộc tính và phương thức mảng

Sức mạnh thực sự của mảng JavaScript là các thuộc tính và phương thức mảng được tích hợp sẵn:

cars.length   // Returns the number of elements
cars.sort()   // Sorts the array

Các phương pháp mảng sẽ được đề cập trong các chương tiếp theo.


Thuộc tính chiều dài

Thuộc tính length của một mảng trả về độ dài của một mảng (số phần tử của mảng).

Ví dụ

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let length = fruits.length;
Hãy tự mình thử »

Thuộc tính length luôn nhiều hơn một chỉ số mảng cao nhất.


Truy cập phần tử mảng đầu tiên

Ví dụ

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits[0];
Hãy tự mình thử »

Truy cập phần tử mảng cuối cùng

Ví dụ

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fruit = fruits[fruits.length - 1];
Hãy tự mình thử »

Các phần tử mảng lặp

Một cách để lặp qua một mảng là sử dụng vòng lặp for :

Ví dụ

const fruits = ["Banana", "Orange", "Apple", "Mango"];
let fLen = fruits.length;

let text = "<ul>";
for (let i = 0; i < fLen; i++) {
  text += "<li>" + fruits[i] + "</li>";
}
text += "</ul>";
Hãy tự mình thử »

Bạn cũng có thể sử dụng hàm Array.forEach() :

Ví dụ

const fruits = ["Banana", "Orange", "Apple", "Mango"];

let text = "<ul>";
fruits.forEach(myFunction);
text += "</ul>";

function myFunction(value) {
  text += "<li>" + value + "</li>";
}
Hãy tự mình thử »

Thêm các phần tử mảng

Cách dễ nhất để thêm một phần tử mới vào mảng là sử dụng phương thức push() :

Ví dụ

const fruits = ["Banana", "Orange", "Apple"];
fruits.push("Lemon");  // Adds a new element (Lemon) to fruits
Hãy tự mình thử »

Phần tử mới cũng có thể được thêm vào mảng bằng thuộc tính length :

Ví dụ

const fruits = ["Banana", "Orange", "Apple"];
fruits[fruits.length] = "Lemon";  // Adds "Lemon" to fruits
Hãy tự mình thử »

CẢNH BÁO !

Việc thêm các phần tử có chỉ số cao có thể tạo ra các "lỗ hổng" không xác định trong một mảng:

Ví dụ

const fruits = ["Banana", "Orange", "Apple"];
fruits[6] = "Lemon";  // Creates undefined "holes" in fruits
Hãy tự mình thử »

Mảng kết hợp

Nhiều ngôn ngữ lập trình hỗ trợ mảng có chỉ mục được đặt tên.

Mảng có chỉ mục được đặt tên được gọi là mảng kết hợp (hoặc băm).

JavaScript không hỗ trợ các mảng có chỉ mục được đặt tên.

Trong JavaScript, mảng luôn sử dụng các chỉ mục được đánh số .

Ví dụ

const person = [];
person[0] = "John";
person[1] = "Doe";
person[2] = 46;
person.length;    // Will return 3
person[0];        // Will return "John"
Hãy tự mình thử »

CẢNH BÁO !!
Nếu bạn sử dụng các chỉ mục được đặt tên, JavaScript sẽ xác định lại mảng thành một đối tượng.

Sau đó, một số phương thức và thuộc tính mảng sẽ cho kết quả không chính xác .

Ví dụ:

const person = [];
person["firstName"] = "John";
person["lastName"] = "Doe";
person["age"] = 46;
person.length;     // Will return 0
person[0];         // Will return undefined
Hãy tự mình thử »

Sự khác biệt giữa mảng và đối tượng

Trong JavaScript, mảng sử dụng các chỉ mục được đánh số .

Trong JavaScript, các đối tượng sử dụng các chỉ mục được đặt tên .

Mảng là một loại đối tượng đặc biệt, có chỉ mục được đánh số.


Khi nào nên sử dụng mảng. Khi nào nên sử dụng Đối tượng.

  • JavaScript không hỗ trợ mảng kết hợp.
  • Bạn nên sử dụng các đối tượng khi muốn tên thành phần là chuỗi (văn bản) .
  • Bạn nên sử dụng mảng khi muốn tên phần tử là số .

Mảng mới JavaScript()

JavaScript có hàm tạo mảng tích hợp new Array() .

Nhưng thay vào đó bạn có thể sử dụng [] một cách an toàn.

Hai câu lệnh khác nhau này đều tạo ra một mảng trống mới có tên là điểm:

const points = new Array();
const points = [];

Hai câu lệnh khác nhau này đều tạo ra một mảng mới chứa 6 số:

const points = new Array(40, 100, 1, 5, 25, 10);
const points = [40, 100, 1, 5, 25, 10];
Hãy tự mình thử »

Từ khóa new có thể tạo ra một số kết quả không mong muốn:

// Create an array with three elements:
const points = new Array(40, 100, 1);
Hãy tự mình thử »
// Create an array with two elements:
const points = new Array(40, 100);
Hãy tự mình thử »
// Create an array with one element ???
const points = new Array(40);  
Hãy tự mình thử »

Một lỗi phổ biến

const points = [40];

không giống như:

const points = new Array(40);
// Create an array with one element:
const points = [40];
Hãy tự mình thử »
// Create an array with 40 undefined elements:
const points = new Array(40);  
Hãy tự mình thử »

Cách nhận biết một mảng

Một câu hỏi thường gặp là: Làm cách nào để biết một biến có phải là một mảng hay không?

Vấn đề là toán tử JavaScript typeof trả về " object ":

const fruits = ["Banana", "Orange", "Apple"];
let type = typeof fruits;
Hãy tự mình thử »

Toán tử typeof trả về đối tượng vì mảng JavaScript là một đối tượng.

Giải pháp 1:

Để giải quyết vấn đề này ECMAScript 5 (JavaScript 2009) đã xác định một phương thức mới Array.isArray() :

Array.isArray(fruits);
Hãy tự mình thử »

Giải pháp 2:

Toán tử instanceof trả về true nếu một đối tượng được tạo bởi một hàm tạo đã cho:

const fruits = ["Banana", "Orange", "Apple"];

fruits instanceof Array;
Hãy tự mình thử »

Tham chiếu mảng hoàn chỉnh

Để có tài liệu tham khảo Mảng đầy đủ, hãy truy cập:

Tham chiếu mảng JavaScript hoàn chỉnh .

Tham chiếu chứa các mô tả và ví dụ về tất cả các thuộc tính và phương thức của Mảng.

Kiểm tra bản thân bằng các bài tập

Bài tập:

Lấy giá trị " Volvo " từ mảng cars .

const xe = ["Saab", "Volvo", "BMW"];
đặt x = ;

Bắt đầu bài tập

×

Liên hệ bán hàng

Nếu bạn muốn sử dụng dịch vụ của Example.com.vn với tư cách là một tổ chức giáo dục, nhóm hoặc doanh nghiệp, hãy gửi email cho chúng tôi:
[email được bảo vệ]

Báo cáo lỗi

Nếu bạn muốn báo cáo lỗi hoặc nếu bạn muốn đưa ra đề xuất, hãy gửi email cho chúng tôi:
[email được bảo vệ]

Example.com.vn được tối ưu hóa cho việc học tập và đào tạo. Các ví dụ có thể được đơn giản hóa để cải thiện khả năng đọc và học. Các hướng dẫn, tài liệu tham khảo và ví dụ liên tục được xem xét để tránh sai sót, nhưng chúng tôi không thể đảm bảo tính chính xác hoàn toàn của mọi nội dung. Khi sử dụng W3Schools, bạn đồng ý đã đọc và chấp nhận các điều khoản sử dụng , chính sách cookie và quyền riêng tư của chúng tôi.

Bản quyền 1999-2024 của Refsnes Data. Đã đăng ký Bản quyền. Example.com.vn được cung cấp bởi W3.CSS .