JavaScript - Tổng quan về đối tượng
JavaScript là ngôn ngữ lập trình hướng đối tượng (OOP). Một ngôn ngữ lập trình có thể được gọi là hướng đối tượng nếu nó cung cấp bốn khả năng cơ bản cho các nhà phát triển:
Encapsulation - khả năng lưu trữ thông tin liên quan, cho dù là dữ liệu hay phương pháp, cùng nhau trong một đối tượng.
Aggregation - khả năng lưu trữ một đối tượng bên trong một đối tượng khác.
Inheritance - khả năng của một lớp dựa vào một lớp khác (hoặc số lớp) cho một số thuộc tính và phương thức của nó.
Polymorphism - khả năng viết một hàm hoặc một phương thức hoạt động theo nhiều cách khác nhau.
Các đối tượng bao gồm các thuộc tính. Nếu một thuộc tính chứa một hàm, nó được coi là một phương thức của đối tượng, ngược lại, thuộc tính được coi là một thuộc tính.
Thuộc tính đối tượng
Thuộc tính đối tượng có thể là bất kỳ trong ba kiểu dữ liệu nguyên thủy hoặc bất kỳ kiểu dữ liệu trừu tượng nào, chẳng hạn như một đối tượng khác. Thuộc tính đối tượng thường là các biến được sử dụng nội bộ trong các phương thức của đối tượng, nhưng cũng có thể là các biến hiển thị toàn cục được sử dụng trên toàn bộ trang.
Cú pháp để thêm thuộc tính vào một đối tượng là:
objectName.objectProperty = propertyValue;
For example - Đoạn mã sau lấy tiêu đề tài liệu bằng cách sử dụng "title" tài sản của document vật.
var str = document.title;
Phương thức đối tượng
Các phương thức là các hàm cho phép đối tượng thực hiện một điều gì đó hoặc để một điều gì đó được thực hiện với nó. Có một sự khác biệt nhỏ giữa một hàm và một phương thức - tại một hàm là một đơn vị câu lệnh độc lập và một phương thức được gắn với một đối tượng và có thể được tham chiếu bởithis từ khóa.
Các phương thức hữu ích cho mọi thứ, từ hiển thị nội dung của đối tượng ra màn hình đến thực hiện các phép toán phức tạp trên một nhóm các thuộc tính và tham số cục bộ.
For example - Sau đây là một ví dụ đơn giản để chỉ ra cách sử dụng write() phương thức của đối tượng tài liệu để viết bất kỳ nội dung nào trên tài liệu.
document.write("This is test");
Đối tượng do người dùng xác định
Tất cả các đối tượng do người dùng định nghĩa và các đối tượng tích hợp đều là con của một đối tượng được gọi là Object.
Nhà điều hành mới
Các newtoán tử được sử dụng để tạo một thể hiện của một đối tượng. Để tạo một đối tượng,new được theo sau bởi phương thức khởi tạo.
Trong ví dụ sau, các phương thức khởi tạo là Object (), Array () và Date (). Các hàm tạo này là các hàm JavaScript được tích hợp sẵn.
var employee = new Object();
var books = new Array("C++", "Perl", "Java");
var day = new Date("August 15, 1947");
Hàm tạo đối tượng ()
Hàm tạo là một hàm tạo và khởi tạo một đối tượng. JavaScript cung cấp một hàm tạo đặc biệt được gọi làObject()để xây dựng đối tượng. Giá trị trả về củaObject() hàm tạo được gán cho một biến.
Biến chứa một tham chiếu đến đối tượng mới. Các thuộc tính được gán cho đối tượng không phải là biến và không được xác định vớivar từ khóa.
ví dụ 1
Hãy thử ví dụ sau; nó trình bày cách tạo một Đối tượng.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
var book = new Object(); // Create the object
book.subject = "Perl"; // Assign properties to the object
book.author = "Mohtashim";
</script>
</head>
<body>
<script type = "text/javascript">
document.write("Book name is : " + book.subject + "<br>");
document.write("Book author is : " + book.author + "<br>");
</script>
</body>
</html>
Đầu ra
Book name is : Perl
Book author is : Mohtashim
Ví dụ 2
Ví dụ này trình bày cách tạo một đối tượng với một Hàm do Người dùng Xác định. Đâythis từ khóa được sử dụng để chỉ đối tượng đã được chuyển cho một hàm.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
function book(title, author) {
this.title = title;
this.author = author;
}
</script>
</head>
<body>
<script type = "text/javascript">
var myBook = new book("Perl", "Mohtashim");
document.write("Book title is : " + myBook.title + "<br>");
document.write("Book author is : " + myBook.author + "<br>");
</script>
</body>
</html>
Đầu ra
Book title is : Perl
Book author is : Mohtashim
Định nghĩa các phương thức cho một đối tượng
Các ví dụ trước chứng minh cách phương thức khởi tạo tạo đối tượng và gán các thuộc tính. Nhưng chúng ta cần hoàn thành định nghĩa của một đối tượng bằng cách gán các phương thức cho nó.
Thí dụ
Hãy thử ví dụ sau; nó chỉ ra cách thêm một hàm cùng với một đối tượng.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
// Define a function which will work as a method
function addPrice(amount) {
this.price = amount;
}
function book(title, author) {
this.title = title;
this.author = author;
this.addPrice = addPrice; // Assign that method as property.
}
</script>
</head>
<body>
<script type = "text/javascript">
var myBook = new book("Perl", "Mohtashim");
myBook.addPrice(100);
document.write("Book title is : " + myBook.title + "<br>");
document.write("Book author is : " + myBook.author + "<br>");
document.write("Book price is : " + myBook.price + "<br>");
</script>
</body>
</html>
Đầu ra
Book title is : Perl
Book author is : Mohtashim
Book price is : 100
Từ khoá 'với'
Các ‘with’ từ khóa được sử dụng như một loại tốc ký để tham chiếu đến các thuộc tính hoặc phương thức của một đối tượng.
Đối tượng được chỉ định làm đối số cho withtrở thành đối tượng mặc định trong khoảng thời gian của khối sau đó. Các thuộc tính và phương thức cho đối tượng có thể được sử dụng mà không cần đặt tên cho đối tượng.
Cú pháp
Cú pháp của với đối tượng như sau:
with (object) {
properties used without the object name and dot
}
Thí dụ
Hãy thử ví dụ sau.
<html>
<head>
<title>User-defined objects</title>
<script type = "text/javascript">
// Define a function which will work as a method
function addPrice(amount) {
with(this) {
price = amount;
}
}
function book(title, author) {
this.title = title;
this.author = author;
this.price = 0;
this.addPrice = addPrice; // Assign that method as property.
}
</script>
</head>
<body>
<script type = "text/javascript">
var myBook = new book("Perl", "Mohtashim");
myBook.addPrice(100);
document.write("Book title is : " + myBook.title + "<br>");
document.write("Book author is : " + myBook.author + "<br>");
document.write("Book price is : " + myBook.price + "<br>");
</script>
</body>
</html>
Đầu ra
Book title is : Perl
Book author is : Mohtashim
Book price is : 100
Đối tượng gốc JavaScript
JavaScript có một số đối tượng tích hợp sẵn hoặc có sẵn. Các đối tượng này có thể truy cập ở bất kỳ đâu trong chương trình của bạn và sẽ hoạt động theo cùng một cách trong bất kỳ trình duyệt nào chạy trong bất kỳ hệ điều hành nào.
Đây là danh sách tất cả các Đối tượng Gốc JavaScript quan trọng -
Đối tượng số JavaScript
Đối tượng Boolean trong JavaScript
Đối tượng chuỗi JavaScript
Đối tượng mảng JavaScript
Đối tượng ngày JavaScript
Đối tượng toán học JavaScript
Đối tượng RegExp JavaScript