blog

console.table()でJavaScriptの高度なデバッグを行う

()による配列データのログ\nプログラミング言語とそのファイル拡張子のテーブルを作成したとします:\nvar languages = [\n { name: "", fileEx...

Dec 13, 2020 · 3 min. read
シェア

console.log()による配列データのログ記録

プログラミング言語とそのファイル拡張子の表を作成したとします:

var languages = [ 
    { name: "JavaScript", fileExtension: ".js" }, 
    { name: "TypeScript", fileExtension: ".ts" }, 
    { name: "CoffeeScript", fileExtension: ".coffee" } 
]; 
  
console.log(languages) 

console.log関数を呼び出すと、以下のようにデータが表示されます:

console.table()による配列データのログ記録

console.log()関数の代わりに、console.table()を呼び出します:

console.table(languages); 

コンソールがリフレッシュ・ページで開かれることを確認してください。すべて正しく行えば、このように小さなテーブルが表示されます:

美しいでしょう?テーブルの各カラムでソートできます:

もちろん、このテーブルには表形式のデータに対するサポートはありません。すべてのオブジェクトがまったく異なるデータ構造を持っている場合、テーブルのほとんどのセルに未定義の値が含まれることになります。それでも、プロパティ値の整然とした配列は、あなたに素晴らしい概観を与えてくれるでしょう。

console.table() によるオブジェクトデータのログ記録

console.table()のもう一つの良いところは、オブジェクトデータにも適用できることです:

var languages = { 
    csharp: { name: "C#", paradigm: "object-oriented" }, 
    fsharp: { name: "F#", paradigm: "functional" } 
}; 
  
console.table(languages); 

このギフトは上の写真です。

表示オブジェクトのプロパティのフィルタリング

// Multiple property keys 
console.table(languages, ["name", "paradigm"]); 

テーブルのカラムを何らかのプロパティで制限したい場合は、console.table() 呼び出しの第2引数にキーと値の配列を渡すことで可能です:

// Multiple property keys 
console.table(languages, ["name", "paradigm"]); 

単一のプロパティの場合は、単純な文字列パラメータで十分です:

// A single property key 
console.table(languages, "name"); 

概要

Chromeデベロッパーツールに搭載されている機能はほとんど知っているつもりでしたが、どうやら間違っていたようです。デベロッパーツールには、便利な機能がたくさんあります。まじめな話、公式ドキュメントのページをチェックしてみてください。もしかしたら、あなたの知らない素晴らしい機能が見つかるかもしれません。

Read next

npm / yarn共通コマンド

1. npm initが自動的にファイルを生成する 2. 指定したモジュールをインストールする 以下のコマンドを実行すると、ダウンロードしたパッケージの詳細を保存するpackage-lock.jsonファイルが自動的に生成されます。 yarnはまた、ダウンロードしたパッケージをキャッシュし、リソースの利用を最大化するために並列ダウンロードを使用するパッケージマネージャでもあるので、インストールはより高速になります...

Dec 13, 2020 · 2 min read