74

JavaScriptでオブジェクト配列を作成しました。print_rPHPの関数と同様に、ブラウザウィンドウでオブジェクト配列を印刷するにはどうすればよいですか?

var lineChartData = [{
            date: new Date(2009, 10, 2),
            value: 5
        }, {
            date: new Date(2009, 10, 25),
            value: 30
        }, {
            date: new Date(2009, 10, 26),
            value: 72,
            customBullet: "images/redstar.png"
        }];
4

11 に答える 11

133

オブジェクトを選択して、選択した要素のinnerHTMLstringifyに割り当てるだけです。

yourContainer.innerHTML = JSON.stringify(lineChartData);

もっとかわいいものが欲しいなら、そうしてください

yourContainer.innerHTML = JSON.stringify(lineChartData, null, 4);

var lineChartData = [{
            date: new Date(2009, 10, 2),
            value: 5
        }, {
            date: new Date(2009, 10, 25),
            value: 30
        }, {
            date: new Date(2009, 10, 26),
            value: 72,
            customBullet: "images/redstar.png"
        }];

document.getElementById("whereToPrint").innerHTML = JSON.stringify(lineChartData, null, 4);
<pre id="whereToPrint"></pre>

ただし、デバッグのためにこれを行うだけの場合は、コンソールを で使用することをお勧めしますconsole.log(lineChartData)

于 2013-02-15T13:01:03.717 に答える
22

チェックしましたか

console.table(yourArray);

詳細はこちら: https://developer.mozilla.org/en-US/docs/Web/API/Console/table

于 2016-05-19T08:00:28.360 に答える
14

Chromeを使用している場合は、

console.log( yourArray );
于 2013-02-15T13:19:25.563 に答える
7

php.jsライブラリに JavaScriptの素晴らしいprint_r実装があります。

echoコードにもサポートを追加する必要があることに注意してください。

デモ: http://jsbin.com/esexiw/1

于 2013-02-15T13:01:59.940 に答える
3

オブジェクトまたは配列の内容を警告する単純な関数。
内容を警告する配列、文字列、またはオブジェクトを指定してこの関数を呼び出します。

関数

function print_r(printthis, returnoutput) {
    var output = '';

    if($.isArray(printthis) || typeof(printthis) == 'object') {
        for(var i in printthis) {
            output += i + ' : ' + print_r(printthis[i], true) + '\n';
        }
    }else {
        output += printthis;
    }
    if(returnoutput && returnoutput == true) {
        return output;
    }else {
        alert(output);
    }
}

使用法

var data = [1, 2, 3, 4];
print_r(data);
于 2013-07-07T13:26:07.050 に答える
1
document.getElementById('container').innerHTML = lineChartData[array_index]
于 2013-02-15T13:06:28.023 に答える
0

ええと...このようなものを使用しないのはなぜですか?

function displayArrayObjects(arrayObjects) {
        var len = arrayObjects.length, text = "";

        for (var i = 0; i < len; i++) {
            var myObject = arrayObjects[i];
            
            for (var x in myObject) {
                text += ( x + ": " + myObject[x] + " ");
            }
            text += "<br/>";
        }

        document.getElementById("message").innerHTML = text;
    }
            
            
            var lineChartData = [{
                date: new Date(2009, 10, 2),
                value: 5
            }, {
                date: new Date(2009, 10, 25),
                value: 30
            }, {
                date: new Date(2009, 10, 26),
                value: 72,
                customBullet: "images/redstar.png"
            }];

            displayArrayObjects(lineChartData);
<h4 id="message"></h4>

結果:

date: Mon Nov 02 2009 00:00:00 GMT+0200 (FLE Standard Time) value: 5 
date: Wed Nov 25 2009 00:00:00 GMT+0200 (FLE Standard Time) value: 30 
date: Thu Nov 26 2009 00:00:00 GMT+0200 (FLE Standard Time) value: 72 customBullet: images/redstar.png 

jsfiddle

于 2016-10-29T17:11:33.650 に答える
0

次の構文を使用するだけで、オブジェクトがコンソールに完全に表示されます。

console.log('object evt: %O', object);

Chrome ブラウザーを使用していますが、これが他のブラウザーに適応できるかどうかはわかりません。

于 2016-03-10T14:43:33.710 に答える