Baseline Widely available
next()
ë©ìëë done
ê³¼ value
ìì±ì ê°ì§ë ê°ì²´ë¥¼ ë°í í©ëë¤. next
ë©ìëì 매ê°ë³ì를 ì ê³µíì¬ ê°ì ì ëë ì´í°ë¡ ë³´ë¼ ìë ììµëë¤.
generatorObject.next(value);
매ê°ë³ì
value
ì ëë ì´í°ë¡ ë³´ë¼ ê°ì ëë¤.
ê°ì yield
ìì ê²°ê³¼ë¡ í ë¹ë©ëë¤. ì를 ë¤ì´ variable = yield ì
ìì .next()
í¨ìì ì ë¬ë ê°ì variable
ì í ë¹ë©ëë¤.
ë ê°ì ìì±ì ê°ì§ ê°ì²´
ì´ê³ , ì´ ìì±ì ë¤ìê³¼ ê°ìµëë¤.
done
(boolean)
ë°ë³µìê° ë°ë³µ ìíì¤ì ëì ì§ë ê²½ì° true
ì
ëë¤. ì´ ê²½ì° value
ë ì íì ì¼ë¡ ë°ë³µìì ë°í ê°ì ì§ì í©ëë¤.
ë°ë³µìê° ìíì¤ìì ë¤ì ê°ì ìì±í ì ìë ê²½ì° false
ì
ëë¤. ì´ë done
ìì±ì ìì í ì§ì íì§ ìë ê²ê³¼ ê°ìµëë¤.
value
ì ëë ì´í°ê° ìì±íê±°ë ë°íí 모ë JavaScript ê°ì ëë¤.
ë¤ì ìì ììë ê°ë¨í ì ëë ì´í°ì next
ë©ìëê° ë°ííë ê°ì²´ë¥¼ ë³´ì¬ ì¤ëë¤.
function* gen() {
yield 1;
yield 2;
yield 3;
}
const g = gen(); // "Generator { }"
g.next(); // "Object { value: 1, done: false }"
g.next(); // "Object { value: 2, done: false }"
g.next(); // "Object { value: 3, done: false }"
g.next(); // "Object { value: undefined, done: true }"
리ì¤í¸ì í¨ê» next() ì¬ì©í기
ì´ ìì ìì getPage
ë 리ì¤í¸ë¥¼ ë°ì pageSize
í¬ê¸°ì ì²í¬ë¡ "íì´ì§ ëë기"를 ìíí©ëë¤. next
를 í¸ì¶í ëë§ë¤ ê·¸ë¬í ì²í¬ê° íë ìì±ë©ëë¤.
function* getPage(pageSize = 1, list) {
let output = [];
let index = 0;
while (index < list.length) {
output = [];
for (let i = index; i < index + pageSize; i++) {
if (list[i]) {
output.push(list[i]);
}
}
yield output;
index += pageSize;
}
}
list = [1, 2, 3, 4, 5, 6, 7, 8];
let page = getPage(3, list); // Generator { }
page.next(); // Object {value: (3) [1, 2, 3], done: false}
page.next(); // Object {value: (3) [4, 5, 6], done: false}
page.next(); // Object {value: (2) [7, 8], done: false}
page.next(); // Object {value: undefined, done: true}
ì ëë ì´í°ì ê° ë³´ë´ê¸°
ì´ ìì ììë ê°ê³¼ í¨ê» next
를 í¸ì¶í©ëë¤.
ì°¸ê³ : ì ëë ì´í°ê° ì²ììë ì무ê²ë ìì±íì§ ìì기 ë문ì 첫 ë²ì§¸ í¸ì¶ìì 기ë¡ëë ê²ì ììµëë¤.
function* gen() {
while (true) {
let value = yield null;
console.log(value);
}
}
const g = gen();
g.next(1);
// "{ value: null, done: false }"
g.next(2);
// 2
// "{ value: null, done: false }"
ëª
ì¸ì ë¸ë¼ì°ì í¸íì± ê°ì´ 보기
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4