Как печатать ассоциативный массив в методе print_r() из вызова $.getJSON?

простая вещь.

$. getJSON используется, и результат вызванного файла .php вызывается как ответ в функции обратного вызова jquery. Json encoded php array - ассоциативный массив.

$.getJSON("file.php",function(response){

// print the associative response array in var_dump or print_r fasion

});

file.php содержит:

<?php

$my_array=array();

//$my_array['random_index1']="random_value1";

//$my_array['random_index2']="random_value2";

//$my_array['random_index3']="random_value3";
// and so on


echo json_encode($my_array);


?>

$my_array имеет случайные ключи и значения.

Как я могу напечатать весь массив "отклик" так же, как метод print_r в php?

EDIT1: Я хочу распечатать его на веб-странице или в поле предупреждения. Не то, чтобы я просто хотел посмотреть значения в консоли javascript (chrome, FF или что-то еще).

EDIT2:, если я напишу тело $.getJSON следующим образом: почему он не будет работать:

    for(var i in response){

    console.log("i="+i+" content="+response[i]);

}

Ответ 1

Я считаю, что console.dir() - это то, что вы ищете:

https://developer.mozilla.org/en-US/docs/Web/API/Console.dir

Единственным недостатком является то, что он не позволяет маркировать каждый объект, который выводится, а также нестандартный консольный метод.

Ответ 2

Если у вас Chrome или Firebug, вы можете использовать console.log(response). В консоли вы можете щелкнуть по зарегистрированному объекту, чтобы просмотреть его свойства.

Ответ 3

Используйте что-то вроде Doug Crockford JSON library, чтобы преобразовать ответ на текст и зарегистрировать его с помощью console.log

function(response) {
    console.log(JSON.stringify(response));
}

Ответ 4

$.getJSON("file.php", function(data) {
    var items = [];

    $.each(data, function(key, val) {
        items.push('<li id="' + key + '">' + val + '</li>');
    });

    $('<ul/>', {
        'index': 'my-list',
        html: items.join('')
    }).appendTo('body');
});

Используя эту структуру, пример проходит через запрошенные данные, строит неупорядоченный список и добавляет его в тело.

ЕСЛИ вы желаете альтернативный формат, который вы можете изменить, например:

 $.each(data, function(key, val) {
       alert('key:' + key + ' value:' + val);
    });

Я признаю, что я позаимствовал из: http://api.jquery.com/jQuery.getJSON/