The reason for the below code is to get rid of callback hell
/pyramid of doom
. I don't fully understand i/o blocking
though yet.
'use strict';
var fs = require('fs');
var co = require('co');
co(function* () {
var fileName = 'readme.txt';
var str =
yield new Promise(function (resolve, reject) {
var result;
try {
result = fs.readFileSync(fileName, 'utf8');
} catch (err) {
reject(err);
}
resolve(result);
});
console.log('result readFileSync: ' + str);
});
All I'm expecting is a yes
or no
answer to be honest. Hope fully if no could someone give some details as I'm trying to learn properly about JavaScript sync/async and how to harness the power of Promises.