Node.js基礎(一)

3893 ワード

Node.js環境に接触したばかりで、実用的な言語はまだJavaScriptですから、文法はもちろんのこと、主要な関心はNode.js環境とブラウザのJavaScript環境との違いです.
ソロ
これはブラウザのjs環境でもよく使われていますが、nodeの中ではもっと一般的です.プログラムのデバッグ情報とログは全部それで出力します.
consolie.log()
ログを標準出力ストリームに印刷して改行します.
console.log('This is Log!');
This is Log
プログラム内の変数フォーマット出力は、%s%d%jなどのプレースホルダをサポートして、文字列、数字、jsonオブジェクトをそれぞれ出力することもできます.
var name = 'UgCode';
var old = 18;
console.log('My name is %s', name);
console.log('I am %d', old);
My name is UgCode I am 18
consone.info()
実はこれはconsole.logと同じです.
consone.error()
これもconsole.logに似ていますが、標準エラーフローに出力されます.出力ストリームをログファイルにリダイレクトすると、これらのエラーはファイルに書き込まれません.
console.log('This is Log!');
console.error('This is Error!');
```
node console.js 1>log.txt
ロゴ.txtファイルを開くと、This is Log!しかありません.ここの数字1は標準出力ストリームを表しています.2に変更すればエラーをファイルに流します.
consone.warn()
同じ理由でconsole.errorと同じです.
consone.time()/consone.timeEnd()
この2つの方法はコード実行時間を計算するペアです.console.timeは、このタイマーを識別するために文字列パラメータを起動し、コードが終了するとconsole.timeEndでこのコードを印刷してどれぐらいの時間がかかりますか?
console.time('time');
var j = 0;
for (var i=0; i < 1000000; i++) {
    j += i;
}
console.timeEnd('time');
console.log('j = ' + j);
time:62 ms j=4999950000 0
グローバル変数
いくつかの一般的なグローバル変数
同前dirname
この変数は現在実行されているjsファイルのディレクトリの絶対パスです.
console.log(__dirname);
//Users/UgCode/webstormproject/TestNodeJS
同前filename
この変数は現在実行中のjsファイルの絶対パスです.
console.log(__filename);
/Users/UgCode/webstormproject/TestNodeJS/process.js
process
process.stdout
出力標準出力ストリーム:
process.stdout.write('This is Stdout');
This is Stdout
プロcess.stder
標準エラーフロー:
process.stderr.write('This is Stderr');
This is Stder
実はconsone.logもこの方法を呼び出して出力しています.
console.log = function(d) {
  process.stdout.write(d + '
'); };
process.stdin.on()process.stdin.onを使用して、ユーザキーボード入力を受け付けることができる.先にコードフォーマットを設定します.
process.stdin.setEncoding('utf-8');
process.stdin.on方法は、ユーザのキーボード入力を受け入れるために、いくつかのコールバック関数を登録することができる.
process.stdin.setEncoding('utf-8');
//data             
process.stdin.on('data', function(data){
    console.log(data);
});
コマンドラインのファイルを実行すると、プログラムが一時停止しています.ユーザーの入力を待っています.コンテンツを入力して車に戻ったら、先ほど入力した内容を出力します.control+cはプログラムを終了します.
//readable      ,   stdin        
process.stdin.on('readable', function(){
    var data = process.stdin.read();
    console.log(data);
});
コマンドラインの運転結果は上と同じです.
process.cwd()
現在のコマンドラインの場所のパスを出力します.
console.log(process.cwd());
process.on()process.onは、コールバック関数を登録することにより、オペレーティングシステムのいくつかのイベントに応答することができる.
プログラムが正常に終了した場合、コールバックexit関数:
process.on('exit', function(){
    console.log('    !');
});
プログラムが割り込みコマンドを受信した場合、SIGINTに戻ります.
process.on('SIGINT', function(){
    console.log('     ');
    //    
    process.exit();
});
process.argv
これはよく知らないはずです.プログラム起動時に入力したパラメータです.process.argvは1つの配列である.第1のパラメータは、使用を実行するコマンドであり、Node.js環境ではnodeであり、第2のパラメータは、ファイルを実行する経路であり、後に入力されるパラメータである.たとえば:
console.log(process.argv);
ファイルを実行してパラメータを入力します.
$ node argv.js   1   2   3   n
出力結果
argv:[[node]、“/Users/UgCode/webstormproject/TestNodeJS/argv.js”、“パラメータ1”、“パラメータ2”、“パラメータ3”、“パラメータn”