Các trường hợp chính xác mà câu lệnh trả về trong Javascript có thể trả lại giá trị khác hơn this
khi một hàm tạo được gọi bằng cách sử dụng từ khóa new
là gì?Giá trị nào mà một hàm khởi tạo có thể trả về để tránh trả lại giá trị này?
Ví dụ:
function Foo() {
return something;
}
var foo = new Foo();
Nếu tôi không nhầm, nếu something
là một tổ chức phi chức năng nguyên thủy, this
sẽ được trả lại. Nếu không, something
sẽ được trả lại. Điều này có đúng không?
IOW, giá trị nào có thể something
mất làm (new Foo() instanceof Foo) === false
?
liên quan: [? Những gì được trở về từ một nhà xây dựng] (http://stackoverflow.com/q/3350215/1048572) – Bergi