任何人都可以解释我: 为什么这是错的:
if (current <= last) {
//here!
return
{
done: false,
value: current++
};
} else {
return
{
done: true
};
}
这是对的吗?
if (current <= last) {
//error here
return {
done: false,
value: current++
};
} else {
return {
done: true
};
}
在这两种情况下代码都会返回对象,但是当我将第一个对象括号移动到新的行代码时,它会停止工作。
答案 0 :(得分:1)
因为“返回”然后新行是一个完整的语句,它将不会返回任何内容,因为在return
之后没有任何内容,它会返回undefined
。
好像你会写return;