Print_r w JS Drukuj
Ocena użytkowników: / 0
SłabyŚwietny 
Wpisany przez Patryk yarpo Jar   
środa, 30 września 2009 20:59

Nie wyobrażam sobie programowania w PHP bez funkcji print_r(). Zawsze doskwierał mi jej brak w JS... Ale, przecież zawsze można napisać to samemu :)

 

    function print_r(o) {
        function f(o, p, s) {
            for(x in o) {
                if ('object' == typeof o[x]) {
                    s += p + x + ' obiekt: \n';
                    pre = p + '\t';
                    s = f(o[x], pre, s);
                } else {
                    s += p + x + ' : ' + o[x] + '\n';
                }
            }
            return s;
        }
        return f(o, '', '');
    }

Oraz sposób wywołania:

var obj = {'c' : {'a' : 'sialala', 'b' : 'sieleel'}, 'f' : 'sss', 'x' : [1,2,3]};
alert(print_r(obj));

W wyniku dostajemy wylistowany cały obiekt, łącznie z zagnieżdżeniami.