Javascript 意外标记'*';预计会有一个开幕式';(';在函数的参数列表之前)
iOS9似乎不喜欢javascript生成器Javascript 意外标记'*';预计会有一个开幕式';(';在函数的参数列表之前),javascript,ios,generator,ecmascript-5,Javascript,Ios,Generator,Ecmascript 5,iOS9似乎不喜欢javascript生成器函数*。我目前正在尝试解决iOS上的承诺问题,我的代码如下所示: ... myFunction: function() { return this.spawn(function*() { yield MyApp.function(); }); return; }, ... 这导致iOS 9上出现以下错误: 意外标记“*”应在函数的 参数表 你知道兼容的替代方案吗
函数*
。我目前正在尝试解决iOS上的承诺问题,我的代码如下所示:
...
myFunction: function() {
return this.spawn(function*() {
yield MyApp.function();
});
return;
},
...
这导致iOS 9上出现以下错误:
意外标记“*”应在函数的
参数表
你知道兼容的替代方案吗?iOS 10支持生成器。如果你坚持使用iOS 9,那么你必须实现自己的伪生成器。生成器协议有
下一个,返回,抛出,和[Symbol.iterator]
方法。您只能实现所需的方法。例如,下面是[Symbol.iterator]
的实现:
让createGenerator=values=>()=>({
[符号.迭代器](){
设i=0;
返回{
下一个:()=>({
值:值[i++],
完成:i>values.length
}),
//下一个
//返回
//扔
}
}
});
让realGenerator=函数*(){
产量1;
产量2;
产量3;
产量4;
};
设fakeGenerator=createGenerator([1,2,3,4]);
log(…realGenerator());
console.log(…fakeGenerator());
但是iOS 9似乎在语法方面确实有问题函数*()
我不确定它是否能工作:/因此,我的解决方案(createGenerator
)避免了函数*()
好的,抱歉