nodejsを勉強します.calback、async i/o

1335 ワード

CALLBACK
Callbacks are functions that are executed asynch ronously、or at later time.Instead of the code reading top to bottom proceradully、async programs may execute different functions
例えば、非同期でファイルを読み、consoneで出力する:
var fs = require('fs');

//'readme.txt'
fs.readFile(process.argv[2], 'utf8', function callback(err, data) {
     if(err !== true) {
       console.log(data);
     }
});
ファイルパスを最初のパラメータとして、shellで以下のコマンドで実行します.
node program.js readme.txt
readFileの2番目のパラメータは「utf 8」出力がstringであり、このパラメータを追加しないと、calbackのdata値が一つのbufferに戻ります.
入力ファイルの行数を返しますか?出力を:
console.log(data.split('
').length-1);
FILERED LS (nodeschool->learnounote)
指定されたパス(1番目のパラメータ)を印刷して、サフィックス(2番目のパラメータ)のすべてのファイル名を指定します.
program.js
var fs = require('fs');
var file = process.argv[2];
var filter = process.argv[3];

//'readme.txt'
fs.readdir(file, function callback(err, list) {
    if(err !== true) {
       for(var i = 0; i < list.length; ++i)
       {
        //  console.log(list[i]);
         if( (list[i].split('.')[1]) && list[i].split('.')[1] === filter){
           console.log(list[i]);
         }
       }
    }
});