Всё-таки получилось сделать. Как обычно, причина не в Ноде, а в прокладке между сиденьем и монитором
var fs = require( 'fs' );
var path = __dirname;
var filesModified = [];
var promise = new Promise( createArrayModified );
promise.then( arrayComplete ).catch( errorHandler );
function createArrayModified( resolve, reject ){
fs.readdir( path, readFilesModified );
function readFilesModified( err, files ) {
var checkArrays;
if ( err ) console.log( err );
for ( var i = 0; i < files.length; i++ ) {
var file = path + '/' + files[i];
fs.stat( file, function ( err, stats ) {
filesModified.push( stats.mtime );
} );
}
checkArrays = setInterval( function(){
if( filesModified.length === files.length ){
resolve();
clearInterval( checkArrays );
}
} ,100 );
}
}
function arrayComplete(){
console.log( filesModified );
}
function errorHandler( err ){
console.log( err );
}