'use?strict';
function*?next_id()?{
//var?val=0;
//var?next?=?function(){
//val++;
//return?{value:?val,next:next};
//}
//return?{value:?val,next:next};
//以上個人第二種方法,測試失敗
var?a=0;
var?b;//中間為別人的方法正確
for(;;){b?=?yield?++a}
//以下個人第一種方法,測試失敗
//var?a?=?0;
//for(;;){a?=?yield?++a}
}
//?測試:
var
????x,
????pass?=?true,
????g?=?next_id();
for?(x?=?1;?x?<?100;?x?++)?{
????if?(g.next().value?!==?x)?{
????????pass?=?false;
????????alert('測試失敗!');
????????break;
????}
}
if?(pass)?{
????alert('測試通過!');
}
能解釋下為什么嗎?謝謝各位
yuqingzhijie3596863
2017-10-09 16:03:13