勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

JavaScriptで配列やオブジェクトの中身をブラウザに表示する方法

  JavaScript

JavaScriptで配列やオブジェクトの中身を確認したい場合、console.table等を用いて開発者ツールから確認しているが、これをブラウザ上に表示し確認できるようにしたい。また、dBug.phpのように見やすく整形してほしい。「prettyprint.js」というライブラリが良さげなので利用方法をメモ。

 

prettyprint.js

Github

https://github.com/padolsey-archive/prettyprint.js

導入方法

CDNは無いっぽいのでこちらのページからprettyprint.jsをダウンロードし、適当なディレクトリにアップロードすること。

 

利用方法

ソースコード

<script type="text/javascript" src="prettyprint.js"></script>
<script>
const array = [
    { id: 1, name: `山田`},
    { id: 2, name: `鈴木` },
    { id: 3, name: `佐々木` },
];
const obj = {
    'apple': { price: 200, name: `りんご`},
    'orange': { price: 300, name: `オレンジ`},
    'grapes': { price: 400, name: `ぶどう` },
}

const prettyPrintOption = {
    styles: {
        'default': {
            table: {
                width: '',
            },
            td: {
                padding: '2px',
            },
            th: {
                padding: '2px',
            },
        }
    }
};

document.body.insertBefore( prettyPrint(array, prettyPrintOption), document.body.firstChild );
document.body.insertBefore( prettyPrint(obj, prettyPrintOption), document.body.firstChild );
</script>

表示サンプル

上記ソースコードをブラウザで確認すると以下のような表示になる筈。

オプションについて

オプションについてはprettyprint.jsの679行目のprettyPrintThis.configを確認すること。個人的にはstyles以外はデフォルトで問題無いように思う。

 - JavaScript

  関連記事

バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法
バニラJavaScript対応の日時ピッカー「Flatpickr」ライブラリの利用方法

サイト内に日時ピッカーを実装する場合、jQueryの「DateTimePicke ...

PHPで画像アップロード、リサイズ、形式変換(jpg->webp等)はclass.upload.phpが便利
PHPで画像アップロード、リサイズ、形式変換(jpg->webp等)はclass.upload.phpが便利

今までPHPで画像関連の処理を行う場合、リサイズの時のみsmart_resize ...

横スクロール可能な要素を視覚的に分かりやすくする「ScrollHint」ライブラリの利用方法
横スクロール可能な要素を視覚的に分かりやすくする「ScrollHint」ライブラリの利用方法

横長のtableを設置し、CSSのoverflowで横スクロール可能にしてもユー ...

PHP Qr Codeライブラリを使用してQRコードを生成する方法
PHP Qr Codeライブラリを使用してQRコードを生成する方法

PHPでQRコードを生成したい。大分前にGoogle Chart APIを用いて ...

PHPでCSVを簡単に取り扱える「LeagueCSV(thephpleague / csv)」の利用方法
PHPでCSVを簡単に取り扱える「LeagueCSV(thephpleague / csv)」の利用方法

PHPでCSVファイルの書き込みや読み込みを行う際、バニラPHPで対応していたが ...