2148130
代码如下(使用strict mode)
function* resolve(url) {
let opt = {
uri: url,
headers: {'user-agent': 'Mozilla/5.0'}
};
request(opt, function(err, res, body) {
let $ = cheerio.load(body);
let links = $('h2').find('a');
for (let link in links) {
yield $(link).attr('href');
}
});
}
运行时出现Unexpected strict mode reserved word的问题。我搜stackoverflow,有人给出的解决方案是用co包装一下,原因也没说清楚。 谁能帮忙解释下问题出在哪里? 是我yield的用法不对还是strict mode有特殊的限制? 有没有办法在不使用co的情况下解决这个问题?