cuốn sách gpt4 ai đã làm

Ngữ cảnh JavaScript

In lại Tác giả: Taklimakan Thời gian cập nhật: 2023-11-02 21:53:10 28 4
mua khóa gpt4 Nike

varUser = {
Tên: "Some Name", Tuổi: 26,
Hiển thị: function() { notification("Age= "+this.Age)};
};

Kiểm tra hàm (fn) {
fn();
}

Kiểm tra (Người dùng.Show);

=================

Cảnh báo được hiển thị bằng mã là "Tuổi = Không xác định". Tôi hiểu rằng hàm User.Show được gọi từ bên trong Test(), đề cập đến "this" của hàm "Test()" chứ không phải đối tượng "User". Có cách nào để giải quyết vấn đề này?

câu trả lời hay nhất

Cách giải quyết vấn đề này là chuyển đối tượng mà bạn đủ điều kiện "cái này" vào bên trong hàm Kiểm tra...

hàm Test(fn, phạm vi, args) {
fn.apply(scope, args);
}

Test(User.Show, User, []);

Mảng args cho phép bạn chuyển thêm bất kỳ đối số nào bạn có thể có. Bạn cũng có thể giữ chức năng Kiểm tra và chỉ chuyển vào một chức năng ẩn danh...

Kiểm tra(function() {User.Show()});

Về bối cảnh JavaScript, chúng tôi đã tìm thấy một câu hỏi tương tự trên Stack Overflow: https://stackoverflow.com/questions/1798881/

28 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress