I've been wondering, is there a better way to pass variables into callback functions in node.js other than using bind().
Here is an example:
var fs = require('fs');
for(var i = 0; i < 100; i++) {
fs.writeFile(i + ".txt", i, function(error) {
fs.stat(this.i + ".txt", function() {
fs.rename(this.i + ".txt", this.i + ".new.txt", function() {
console.log("[" + this.i + "] Done...");
}.bind({ i: this.i }));
}.bind({ i: this.i }));
}.bind({ i: i }));
}
Notice the bind() methods all the way up, simply passing the value of i.
Thanks.
[ undefined ] done...