JavaScript скрипты


JavaScript аналог print_r

Размещена 6 октября, 2009 года


Здесь мы рассмортим аналог PHP функции PRINT_R на JavaScript, реализующую возможность распечатывать массивы, хэши и прочие объекты
<script>
function print_r( array, return_val ) {    // Prints human-readable information about a variable

    var output = "", pad_char = " ", pad_val = 4;
 
    var formatArray = function (obj, cur_depth, pad_val, pad_char) {
        if(cur_depth > 0)
            cur_depth++;
 
        var base_pad = repeat_char(pad_val*cur_depth, pad_char);
        var thick_pad = repeat_char(pad_val*(cur_depth+1), pad_char);
        var str = "";
 
        if(obj instanceof Array || obj instanceof Object) {
            str += "Array\n" + base_pad + "(\n";
            for(var key in obj) {
                if(obj[key] instanceof Array || obj[key] instanceof Object) {
                    str += thick_pad + "["+key+"] => "+formatArray(obj[key], cur_depth+1, pad_val, pad_char);
                } else {
                    str += thick_pad + "["+key+"] => " + obj[key] + "\n";
                }
            }
            str += base_pad + ")\n";
        } else {
            str = obj.toString();
        };
 
        return str;
    };
 
    var repeat_char = function (len, char) {
        var str = "";
        for(var i=0; i < len; i++) { str += char; };
        return str;
    };
 
    output = formatArray(array, 0, pad_val, pad_char);
 
    if(return_val !== true) {
        document.write("<pre>" + output + "</pre>");
        return true;
    } else {
        return output;
    }
}

print_r(
    {
        name: "Anton",
        age : 18,
        interests: {
            games: ['Counter Strike', 'Космические рейнджеры'],
            internet: ['programming', 'news']
        },
        sex : "male"
    },
    false
);

</script>


Пример использования print_r


Исходник немного изменен. original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
SAPE все усложнил?

MainLink - простая и прибыльная продажа ссылок!

Последние поступления:

Запуск приложений на отдельном X-сервере

Размещена 18 ноября 2011 года

Запуск игр в отдельном X сервере на примере Warcraft

читать далее…

Размещена 10 октября 2011 года

Обсуждение новости "В Японии изобрели устройство для имитации поцелуев":

...Как сообщается, с помощью этого устройства "поцеловаться" могут двое интернет-пользователей, которые находятся на удалении друг от друга...

ххх: Лучше бы изобрели устройство которое может дать по морде через итернет. Вещь была бы весьма актуальная.

Краткое Руководство по iptables: Действия и переходы

Размещена 23 сентабря 2011 года

Действия и переходы сообщают правилу, что необходимо
выполнить, если пакет соотвествует заданному критерию. Чаще
всего употребляются действия ACCEPT и DROP. Однако, давайте кратко
рассмотрим понятие переходов.

читать далее…

Краткое Руководство по iptables

Размещена 23 сентабря 2011 года

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

читать далее…

Размещена 09 сентабря 2011 года

Igor> Согласно одному из законов Мерфи общемировой уровень IQ является константой, которая делится на все население планеты. А поскольку население непрерывно увеличвиается, то...
_mw_> То первая амеба была абсолютно мудра)