Baseline Widely available
ë ì´ë¸ 구문ì break
ë continue
구문과 í¨ê» ì¬ì©í ì ìë¤. ìíë ìë³ìë¡ êµ¬ë¬¸ ìì ë ì´ë¸ì ì¶ê°í ì ìë¤.
ì°¸ê³ : ë ì´ë¸ì ë¶ì¸ ë°ë³µë¬¸ì´ë ë¸ë¡ê° ì주 ì¬ì©ëë ê²ì ìëë¤. ë°ë³µë¬¸ì¼ë¡ ì ííë ëì ì í¨ì를 í¸ì¶í ìë ìë¤.
문ë²label
JavaScriptìì ì¬ì©í ì ìë ìë³ìë©´ 모ë ê°ë¥íë¤.
statement
구문. breakë 모ë ë ì´ë¸ 구문ìì ì¬ì©ë ì ìì¼ë©°, continueë ë°ë³µ ë ì´ë¸ 구문ììë§ ì¬ì©í ì ìë¤.
ë°ë³µë¬¸ì ë ì´ë¸ì ë¶ì´ê³ , breakë continue 구문ì ì¬ì©í´ ë°ë³µë¬¸ì ì´ë ìì¹ìì ìì ì ë©ì¶ê³ ì´ë ìì¹ìì ë¤ì ìíí ì§ë¥¼ ìë ¤ì¤ ì ìë¤.
JavaScriptìë goto êµ¬ë¬¸ì´ ìë¤ë ê²ì 주ì. breakë continueììë§ ë ì´ë¸ì ì¬ì©í ì ìë¤.
strict mode ì½ëìì "let"ì ë ì´ë¸ ì´ë¦ì¼ë¡ ì¬ì©í ì ìë¤. SyntaxError
를 ë°ììí¨ë¤. (letì íì©ëì§ ìë ìë³ìì´ë¤.)
var i, j;
loop1: for (i = 0; i < 3; i++) {
//첫ë²ì§¸ for문ì "loop1" ë ì´ë¸ì ë¶ìë¤.
loop2: for (j = 0; j < 3; j++) {
//ëë²ì§¸ for문ì "loop2" ë ì´ë¸ì ë¶ìë¤.
if (i === 1 && j === 1) {
continue loop1;
}
console.log("i = " + i + ", j = " + j);
}
}
// ì¶ë ¥ ê²°ê³¼:
// "i = 0, j = 0"
// "i = 0, j = 1"
// "i = 0, j = 2"
// "i = 1, j = 0"
// "i = 2, j = 0"
// "i = 2, j = 1"
// "i = 2, j = 2"
// ë¤ì ë ê²½ì°ë¥¼ ì´ë»ê² ì¤íµíëì§ ì£¼ëª© : "i = 1, j = 1", "i = 1, j = 2"
ë ì´ë¸ continue문 ì¬ì©í기
items, tests ë°°ì´ì ë³´ë©´ ì´ ìì ë tests를 íµê³¼íë itemsì ì를 ì¸ê³ ìë¤.
var itemsPassed = 0;
var i, j;
top: for (i = 0; i < items.length; i++) {
for (j = 0; j < tests.length; j++) {
if (!tests[j].pass(items[i])) {
continue top;
}
}
itemsPassed++;
}
for문ì ë ì´ë¸ break문 ì¬ì©í기
var i, j;
loop1: for (i = 0; i < 3; i++) {
//The first for statement is labeled "loop1"
loop2: for (j = 0; j < 3; j++) {
//The second for statement is labeled "loop2"
if (i === 1 && j === 1) {
break loop1;
}
console.log("i = " + i + ", j = " + j);
}
}
// Output is:
// "i = 0, j = 0"
// "i = 0, j = 1"
// "i = 0, j = 2"
// "i = 1, j = 0"
// Notice the difference with the previous continue example
ë ì´ë¸ break문 ì¬ì©í기
items, tests ë°°ì´ì ë³´ë©´, ë¤ì ìì ë itemsê° tests를 모ë íµê³¼íëì§ íë¨íë¤.
var allPass = true;
var i, j;
top: for (i = 0; items.length; i++)
for (j = 0; j < tests.length; i++)
if (!tests[j].pass(items[i])) {
allPass = false;
break top;
}
ë ì´ë¸ ë¶ì¸ ë¸ë¡ì break ì¬ì©í기
ê°ë¨í ë¸ë¡ìë ë ì´ë¸ì ì¬ì©í ì ìì§ë§, ë°ë³µë¬¸ ìë ë ì´ë¸ìë breakë¬¸ë§ ì¬ì©í ì ìë¤.
foo: {
console.log("face");
break foo;
console.log("this will not be executed");
}
console.log("swap");
// ë¡ê·¸ë ì´ë ê² ì¶ë ¥ëë¤:
// "face"
// "swap
ë ì´ë¸ ë¶ì¸ í¨ì ì ì¸ë¬¸
ECMAScript 2015ìì, ë ì´ë¸ ë¶ì¸ í¨ì ì ì¸ë¬¸ì web compatibility annex of the specificationì non-strict 모ëìì íì¤íëì´ ìë¤.
strict mode ììë SyntaxError
를 ë°ììí¨ë¤.
"use strict";
L: function F() {}
// SyntaxError: functions cannot be labelled
Generator functionsë strict codeë non-strict codeììë ë ì´ë¸ ë¶ì¼ ì ìë¤.
L: function* F() {}
// SyntaxError: generator functions cannot be labelled
ëª
ì¸ ë¸ë¼ì°ì í¸íì± ë ìì보기
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