Phương thức đối tượng JavaScript
Ví dụ
const person = {
firstName: "John",
lastName: "Doe",
id: 5566,
fullName: function() {
return this .firstName + " " +
this .lastName;
}
};
Hãy tự mình thử »Cái này là cái gì ?
Trong JavaScript, từ khóa this
đề cập đến một đối tượng .
Đối tượng nào phụ thuộc vào cách this
được gọi (được sử dụng hoặc được gọi).
Từ khóa this
đề cập đến các đối tượng khác nhau tùy thuộc vào cách nó được sử dụng:
Trong một phương thức đối tượng, this đề cập đến đối tượng . |
Một mình, this đề cập đến đối tượng toàn cầu . |
Trong một hàm, this đề cập đến đối tượng toàn cục . |
Trong một hàm, ở chế độ nghiêm ngặt, this là undefined . |
Trong một sự kiện, this đề cập đến phần tử đã nhận được sự kiện. |
Các phương thức như call() , apply() và bind() có thể tham chiếu this tới bất kỳ đối tượng nào . |
Ghi chú
this
không phải là một biến. Đó là một từ khóa. Bạn không thể thay đổi giá trị của this
.Xem thêm:
Phương thức JavaScript
Các phương thức JavaScript là các hành động có thể được thực hiện trên các đối tượng.
Phương thức JavaScript là một thuộc tính chứa định nghĩa hàm .
Tài sản | Giá trị |
---|---|
tên đầu tiên | John |
họ | Nai |
tuổi | 50 |
màu mắt | màu xanh da trời |
Họ và tên | function() {return this.firstName + " " + this.lastName;} |
Phương thức là các hàm được lưu trữ dưới dạng thuộc tính đối tượng.
Truy cập các phương thức đối tượng
Bạn truy cập một phương thức đối tượng với cú pháp sau:
objectName.methodName()
Thông thường bạn sẽ mô tả fullName() như một phương thức của đối tượng người và fullName như một thuộc tính.
Thuộc tính fullName sẽ thực thi (dưới dạng một hàm) khi nó được gọi bằng ().
Ví dụ này truy cập phương thức fullName() của đối tượng người:
Nếu bạn truy cập thuộc tính fullName, không có(), nó sẽ trả về định nghĩa hàm :
Thêm một phương thức vào một đối tượng
Thêm một phương thức mới vào một đối tượng thật dễ dàng:
Sử dụng các phương pháp tích hợp
Ví dụ này sử dụng phương thức toUpperCase()
của đối tượng String để chuyển văn bản thành chữ hoa:
let message = "Hello world!";
let x = message.toUpperCase();
Giá trị của x sau khi thực thi đoạn mã trên sẽ là:
HELLO WORLD!
Ví dụ
person.name = function () {
return (this.firstName + " " + this.lastName).toUpperCase();
};
Hãy tự mình thử »