Có thể gọi đệ quy một phương thức từ một đối tượng theo nghĩa đen không?Phương thức văn bản đối tượng JavaScript: Gọi đệ quy
Ví dụ:
(function() {
'use strict';
var abc = ['A', 'B', 'C'],
obj = {
f: function() {
if (abc.length) {
abc.shift();
f(); // Recursive call
}
}
};
obj.f();
}());
Lỗi: 'f' đã được sử dụng trước khi nó được xác định.
Cảm ơn.
'this' có thể hoặc không thể trỏ đến 'obj' tùy thuộc vào cách' f' được gọi là. Làm tốt hơn điều này rõ ràng trước khi nó cắn anh chàng sau này. –
@MattiVirkkunen - thực sự - đã chỉnh sửa. Cảm ơn bạn đã tip và thưởng thức các huy hiệu mới của bạn :) –
Yay [!] (Http://stackoverflow.com/questions/9006587/javascript-object-literal-method-recursive-call) –