生成器函数,支持匿名写法么
function(a) {} a => {}
function*(a) {} 能写成箭头函数方式么?
4 回复
不能
大神,yield 怎么和数组的 forEach 配合,给Array重新现实一个类似的方法,如果不支持箭头写法,还是很蛋疼
Array.prototype.for = function (gen) { var ret = []; for (var a = 0; a < this.length; a++) ret.push(gen(this[a], a)); return ret; };
co(function* () { var list = [10, 11, 12, 13]; for (var a = 0; a < list.length; a++) console.log(yield sql(‘select * from users where id=?’, list[a]).query());
yield list.for(function* (a) {
var ret = yield sql('select * from users where id=?', a).query();
console.log(ret);
return ret[0] && ret[0].username;
});
}).catch(err => console.warn(err));
@2881099 最好单独写工具类,不要更改内置类型的原型
co(function* () {
var list = [10, 11, 12, 13];
var results = yield list.map(function (a) {
return sql('your sql', a).query();
});
}).catch(err => console.warn(err));