Tôi có một số mã:Làm thế nào để lặp qua các thuộc tính nguyên mẫu của một đối tượng
var obj = function() { }; // functional object
obj.foo = 'foo';
obj.prototype.bar = 'bar';
for (var prop in obj) {
console.log(prop);
}
gì làm tôi ngạc nhiên là tất cả những gì được đăng nhập là foo
. Tôi dự kiến vòng lặp for lặp lại qua các thuộc tính của mẫu thử nghiệm của obj
(cụ thể là bar
), bởi vì tôi đã không kiểm tra hasOwnProperty
. Tôi đang thiếu gì ở đây? Và có một cách thành ngữ để lặp qua tất cả các thuộc tính trong nguyên mẫu không?
Tôi đã thử nghiệm điều này trong Chrome và IE10.
Xin cảm ơn trước.
gắn các thuộc tính vào nguyên mẫu làm cho nó trở thành các thuộc tính của đối tượng đó chứ không phải đối tượng. –