Мне было интересно, есть ли лучший способ передать переменные в функции обратного вызова в node.js, кроме использования bind()
.
Вот пример:
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 }));
}
Обратите внимание на методы bind()
полностью, просто передав значение i
.
Спасибо.