Phương thức "in" và "hasOwnProperty" có thể hoán đổi cho nhau, nhưng tôi tự hỏi liệu một phương pháp có kiểm tra các thuộc tính kế thừa hay cái gì đó và cái kia không hay cái gì đó như thế. Tôi đặc biệt quan tâm đến trường hợp sử dụng nó với một từ điển, nhưng tôi nghi ngờ rằng đó là khác với sử dụng khác.Trong Actionscript 3, sự khác nhau giữa toán tử "in" và phương thức "hasOwnProperty" là gì?
"hasOwnProperty" được mô tả trong tài liệu chính thức here và "trong" được mô tả here, nhưng nếu có sự khác biệt, tôi không tìm thấy nó rất rõ ràng.
Và có nhiều đến nó vẫn còn. hasOwnProperty không hỗ trợ tra cứu tĩnh. Ví dụ, '** Các thuộc tính tĩnh **' - các biến, hằng số hoặc các phương thức được định nghĩa với từ khóa tĩnh trong lớp định nghĩa của đối tượng hoặc bất kỳ lớp siêu lớp nào của nó; và '** Đặc tính nguyên mẫu **' - các thuộc tính được xác định trên một đối tượng nguyên mẫu là một phần của chuỗi nguyên mẫu của đối tượng. 'sẽ trả về' false'. –
Một cách khác để xem nó là 'in' sẽ cho tôi biết nếu nó ném một lỗi nếu tôi truy cập thuộc tính hoặc phương thức mà ở đó' hasOwnProperty' sẽ không vì nó không kiểm tra xem thuộc tính tĩnh hoặc nguyên mẫu hay phương thức tồn tại. –