Как я могу знать все атрибуты объекта javascript? - PullRequest
2 голосов
/ 16 февраля 2011

Есть ли что-то вроде отражения в Java, где я могу знать, какие атрибуты доступны?

Ответы [ 3 ]

2 голосов
/ 16 февраля 2011
for(var key in myObject) {
    //do something with key
}

, который перечисляет все свойства

все свойства для объекта window http://jsfiddle.net/KdyLG/

1 голос
/ 16 февраля 2011

Способ сделать это:

for(var attrib in myObject){    

 if(typeof attrib != 'function') {

     alert('this is attribute ' + attrib + 'with value' +  myObject[attrib]);    
 } }
1 голос
/ 16 февраля 2011

Это одна функция, которую я использую.Вы можете указать, какой уровень массива вы хотите сбросить.

alert(dump(myArray));

function dump(arr,level) {
    var dumped_text = "";
    if(!level) level = 0;

    //The padding given at the beginning of the line.
    var level_padding = "";
    for(var j=0;j<level+1;j++) level_padding += "    ";

    if(typeof(arr) == 'object') { //Array/Hashes/Objects 
        for(var item in arr) {
            var value = arr[item];

            if(typeof(value) == 'object') { //If it is an array,
                dumped_text += level_padding + "'" + item + "' ...\n";
                dumped_text += dump(value,level+1);
            } else {
                dumped_text += level_padding + "'" + item + "' => \"" + value + "\"\n";
            }
        }
    } else { //Stings/Chars/Numbers etc.
        dumped_text = "===>"+arr+"<===("+typeof(arr)+")";
    }
    return dumped_text;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...