Giả sử tôi muốn tìm kiếm một giá trị, như 'StackOverflow'
, trong tất cả các biến được khai báo trong window
. tôi có thể làm điều đó với mã này:Đệ quy tìm kiếm một giá trị trong biến toàn cục và thuộc tính của nó
function globalSearch(obj, value) {
for(var p in obj)
if(obj[p] == value)
return(p);
}
globalSearch(window, 'StackOverflow');
Mã này sẽ trả lại tên của một biến có giá trị này (hoặc trả về không có gì). Vì vậy, nếu tôi đã khai báo biến có giá trị 'StackOverflow'
, nó sẽ tìm thành công biến đó.
Vấn đề của tôi là tôi muốn đi sâu hơn và tìm kiếm qua đối tượng window
's (và các đối tượng lồng nhau riêng của mình) cũng vậy, để đạt được một kết quả như thế này:
var x = 'StackOverflow' // returns 'x'
var y = { a : 'StackOverflow' } // returns 'y.a'
var z = { a : { b: 'StackOverflow' } } // returns 'z.a.b'
Tôi đang gặp vấn đề với kế thừa phương pháp của đối tượng. Có cách nào để làm việc này không?
Điều gì khiến bạn muốn nói đến các vấn đề với các phương pháp được kế thừa? –