2010-06-05 3 views
3

Как можно перечислить/закодировать все свойства объекта? Зная только имя объекта.js объектов и свойств

например

for(var prop in myobject){ 
alert(prop.name); 
alert(prop.value); 
} 
+0

Используйте опору в качестве ключа в свойствах MyObject т.е. MyObject [проп] –

ответ

4
for(var prop in myobject) { 
    alert(prop); 
    alert(myobject[prop]); 
} 
+0

Не забывайте использовать '.hasOwnProperty' –

+0

Я просто привязав, чтобы увидеть Google свойства карты маркера. (api2) Спасибо за работу, за исключением многих свойств! document.write может быть лучше в следующий раз вместо предупреждения. ой – Harry

2

Вы почти там!

for(var prop in myobject){ 
    alert(prop);   // -> property name 
    alert(myobject[prop]); // -> property value 
} 

Имейте в виду, что это будет только перебрать свойства, которые не имеют атрибут {DontEnum}. Почти все встроенные свойства и методы не будут повторяться, вы увидите только пользовательские свойства и методы, добавленные либо напрямую, либо через прототип.

1
myobj.prototype.details= function(delim, sortfun){ 
    delim=delim || ', '; 
    var list= []; 
    for(var p in this){ 
     if(this.hasOwnProperty(p){ 
      list[list.length]=p+':'+this[p].toString(); 
     } 
    } 
    if(typeof sortfun==function) list.sort(sortfun); 
    return list.join(delim); 
} 

е