標準出力に出力する場合、console.logを使う方法と、process.stdout.writeを使う方法があります。
process.stdout.write
process.stdout.writeをTypeScriptで使用する場合、@types/node をインストールする必要があります。
npm i -D @types/node
使い方は、以下のようになります。
import process from 'process'; process.stdout.write("Hello World\n");console.logと異なり、文末を自動改行しないので、文末を改行したい場合は、改行コードが必要です。
console.log
console.logは、ブラウザとNode.jsでは、動作が異なります。
オブジェクトの表示
以下のように、クラスOrangeのオブジェクトobjを作成して、その中身を確認したい場合
class Orange { private title = 'オレンジ'; public getTitle(): string { return this.title; } } const obj = new Orange();node.jsでは、このクラスのオブジェクトをconsole.logで表示させると
console.log(new Orange());以下のようになります。
Orange { title: 'オレンジ' }
ブラウザの場合、ブラウザによっては上記で表示されない場合があります。 その場合は以下のようにします。
console.log(JSON.parse(JSON.stringify(obj)));node.jsで上記を実行すると、以下のように表示されます。
{ title: 'オレンジ' }参考
他に、文字列置換を使った以下のような方法もあります。"%O" または "%o" は、Javascriptのオブジェクトの詳細を表示します。
console.log("Target: %O", obj);この出力は、以下のようになります。"%O"の部分が obj の詳細情報に置換されて出力されます。
Target: Orange { title: 'オレンジ' }