루íë ì´ë¤ ê²ì ë°ë³µì ì¼ë¡ ìíí ë ë¹ ë¥´ê³ ê°í¸í ë°©ë²ì ì ê³µí©ëë¤. JavaScript Guideì ì´ í목ì JavaScript ìì ì¬ì©ì´ ê°ë¥í ìë¡ ë¤ë¥¸ ì¬ë¬ê°ì§ ë°ë³µë¬¸ì ìê°í©ëë¤.
ë°ë³µë¬¸ì ê²ìì ì»´í¨í°íë ë²ì ì´ë¼ê³ ìê°í´ ë³´ì¸ì. ëêµ°ê°ìê² í ë°©í¥ì¼ë¡ Xë§í¼ ê°ê² ìí¤ê³ ë¤ë¥¸ ë°©í¥ì¼ë¡ Yë§í¼ ë ê°ê² íë¤ê³ ìê°í´ ë³´ììì¤. ì를ë¤ì´, "ë쪽ì¼ë¡ 5ë§í¼ ê°ì¸ì"ë ë¤ìê³¼ ê°ì´ ë°ë³µë¬¸ì¼ë¡ íí ë ì ììµëë¤.
var step;
for (step = 0; step < 5; step++) {
// Runs 5 times, with values of step 0 through 4.
console.log("Walking east one step");
}
ë°ë³µë¬¸ì ë§¤ì° ë¤ìí ì¢ ë¥ê° ììµëë¤. íì§ë§ ë°ë³µë¬¸ì´ 기본ì ì¼ë¡ íëì¼ì 모ë ê°ìµëë¤. ë°ë³µë¬¸ì í ëìì ì¬ë¬ ë² ë°ë³µí©ëë¤. (ì¬ì¤ 0í ë°ë³µíë ê²ë ê°ë¥í©ëë¤.) ë¤ìí ë°ë³µë¬¸ ë©ì»¤ëì¦ì ë¤ìí ë°©ë²ì¼ë¡ ë°ë³µë¬¸ì ììì ê³¼ ëëë ì ì ì í ì ììµëë¤.
JavaScriptê° ì§ìíë ë°ë³µë¬¸ì ë¤ìê³¼ ê°ìµëë¤:
for
문
for ë°ë³µë¬¸ì ì´ë¤ í¹ì í ì¡°ê±´ì´ ê±°ì§ì¼ë¡ íë³ë ëê¹ì§ ë°ë³µí©ëë¤. JavaScriptì ë°ë³µë¬¸ì Cì ë°ë³µë¬¸ê³¼ ë¹ì·í©ëë¤. for ë°ë³µë¬¸ì ë¤ìê³¼ ê°ìµëë¤.
for ([ì´ê¸°ë¬¸]; [조건문]; [ì¦ê°ë¬¸]) 문ì¥
forë¬¸ì´ ì¤íë ë, ë¤ìê³¼ ê°ì´ ì¤íë©ëë¤.:
ë¤ì í¨ìë ì¤í¬ë¡¤ë§ 목ë¡(ë¤ì¤ ì íì íì©íë ìì <select>
) ìì ì íë ìµì
ë¤ì ì¸ë for문 ì
ëë¤. ì´ for문ì ë³ì i 를 ì ì¸íê³ 0ì¼ë¡ ì´ê¸°í ìíµëë¤. ì´ê²ì i ê° <select> ìì ìì ìµì
ìê° i ë³´ë¤ ììì§ íì¸ í©ëë¤. ë¤ìì if문ì ìííê³ ê° ë£¨í를 ë¹ ì ¸ëê° ë¤ i 를 1 ì¦ê°ìíµëë¤.
<form name="selectForm">
<p>
<label for="musicTypes"
>Choose some music types, then click the button below:</label
>
<select id="musicTypes" name="musicTypes" multiple="multiple">
<option selected="selected">R&B</option>
<option>Jazz</option>
<option>Blues</option>
<option>New Age</option>
<option>Classical</option>
<option>Opera</option>
</select>
</p>
<p><input id="btn" type="button" value="How many are selected?" /></p>
</form>
<script>
function howMany(selectObject) {
var numberSelected = 0;
for (var i = 0; i < selectObject.options.length; i++) {
if (selectObject.options[i].selected) {
numberSelected++;
}
}
return numberSelected;
}
var btn = document.getElementById("btn");
btn.addEventListener("click", function () {
alert(
"Number of options selected: " + howMany(document.selectForm.musicTypes),
);
});
</script>
do...while
문
do...while 문ì í¹ì í ì¡°ê±´ì´ ê±°ì§ì¼ë¡ íë³ë ëê¹ì§ ë°ë³µí©ëë¤. do...while 문ì ë¤ìê³¼ ê°ìµëë¤.
do ë¬¸ì¥ while (조건문);
조건문ì íì¸í기 ì ì 문ì¥ì íë² ì¤íë©ëë¤. ë§ì 문ì¥ì ì¤íí기 ìí´ì { }를 ì¨ì 문ì¥ë¤ì 묶ì´ì¤ëë¤. ë§ì½ ì¡°ê±´ì´ ì°¸ì´ë¼ë©´, ê·¸ 문ì¥ì ë¤ì ì¤íë©ëë¤. 매 ì¤í ë§ì§ë§ë§ë¤ ì¡°ê±´ë¬¸ì´ íì¸ë©ëë¤. ë§ì½ ì¡°ê±´ë¬¸ì´ ê±°ì§ì¼ ê²½ì°, ì¤íì ë©ì¶ê³ do...while 문 ë°ë¡ ìëì ìë 문ì¥ì¼ë¡ ëì´ê°ê² í©ëë¤.
ë¤ì ìì ìì, do ë°ë³µë¬¸ì ìµì íë²ì ë°ë³µë©ëë¤. ê·¸ë¦¬ê³ i ê° 5ë³´ë¤ ìì§ ìì ëê¹ì§ ê³ì ë°ë³µë©ëë¤.
do {
i += 1;
console.log(i);
} while (i < 5);
while
문
while 문ì ì´ë¤ ì¡°ê±´ë¬¸ì´ ì°¸ì´ê¸°ë§ íë©´ 문ì¥ì ê³ìí´ì ìíí©ëë¤. while 문ì ë¤ìê³¼ ê°ìµëë¤.
while (조건문) 문ì¥
ë§ì½ ì¡°ê±´ë¬¸ì´ ê±°ì§ì´ ëë¤ë©´, ê·¸ ë°ë³µë¬¸ ìì 문ì¥ì ì¤íì ë©ì¶ê³ ë°ë³µë¬¸ ë°ë¡ ë¤ìì 문ì¥ì¼ë¡ ëì´ê°ëë¤.
조건문ì ë°ë³µë¬¸ ìì 문ì¥ì´ ì¤íë기 ì ì íì¸ ë©ëë¤. ë§ì½ ì¡°ê±´ë¬¸ì´ ì°¸ì¼ë¡ 리í´ëë¤ë©´, 문ì¥ì ì¤íëê³ ê·¸ 조건문ì ë¤ì íë³ë©ëë¤. ë§ì½ ì¡°ê±´ë¬¸ì´ ê±°ì§ì¼ë¡ 리í´ëë¤ë©´, ì¤íì ë©ì¶ê³ while문 ë°ë¡ ë¤ìì 문ì¥ì¼ë¡ ëì´ê°ê² ë©ëë¤.
ë§ì 문ì¥ë¤ì ì¤íí기 ìí´ì , { }를 ì¨ì 문ì¥ë¤ì 묶ì´ì¤ëë¤.
ìì 1ë¤ì while ë°ë³µë¬¸ì nì´ 3ë³´ë¤ ìì í, ê³ì ë°ë³µë©ëë¤.
n = 0;
x = 0;
while (n < 3) {
n++;
x += n;
}
매 ë°ë³µê³¼ í¨ê», nì´ ì¦ê°íê³ xì ëí´ì§ëë¤. ê·¸ë¬ë¯ë¡, xì nì ë¤ìê³¼ ê°ì ê°ì ê°ìµëë¤.
n
= 1 and x
= 1n
= 2 and x
= 3n
= 3 and x
= 6ì¸ë²ì§¸ 경과 íì, n < 3 ì ëì´ì ì°¸ì´ ìëë¯ë¡, ë°ë³µë¬¸ì ì¢ ê²°ë©ëë¤.
ìì 2조건문ì íì ê±°ì§ì´ ë ì§ë¼ë 무í 루íë í¼í´ì¼ í©ëë¤. ê·¸ë ì§ ìì¼ë©´ ê·¸ ë°ë³µë¬¸ì ììí ëëì§ ìì ê²ì ëë¤. ìëì while 문ì ì¡°ê±´ë¬¸ì´ ì ë ê±°ì§ì´ ë ì ìì¼ë¯ë¡ ììí ë°ë³µë ê²ì ëë¤.
// ë¤ìê³¼ ê°ì ì½ëë í¼íì¸ì.
while (true) {
console.log("Hello, world");
}
ë ì´ë¸ 문
ë ì´ë¸ì ì¬ë¬ë¶ì´ íë¡ê·¸ë¨ìì ë¤ë¥¸ ê³³ì¼ë¡ 참조í ì ìëë¡ ìë³ìë¡ ë¬¸ì ì ê³µí©ëë¤. ì를 ë¤ì´, ì¬ë¬ë¶ì 루í를 ìë³í기 ìí´ ë ì´ë¸ì ì¬ì©íê³ , íë¡ê·¸ë¨ì´ 루í를 ë°©í´íê±°ë ì¤íì ê³ìí ì§ ì¬ë¶ë¥¼ ëíë´ê¸° ìí´ breakë continue 문ì ì¬ì©í ì ììµëë¤.
ë ì´ë¸ 문ì 구문ì ë¤ìê³¼ ê°ìµëë¤:
label : statement
ë ì´ë¸ ê°ì ìì½ì´ê° ìë ììì JavaScript ìë³ìì¼ ì ììµëë¤. ì¬ë¬ë¶ì´ ë ì´ë¸ì ê°ì§ê³ ìë³íë 문ì ì´ë í ë¬¸ì´ ë ì ììµëë¤.
ììì´ ììì, ë ì´ë¸ markLoopë while 루í를 ìë³í©ëë¤.
markLoop: while (theMark == true) {
doSomething();
}
break
문
break문ì ë°ë³µë¬¸, switch문, ë ì´ë¸ 문과 ê²°í©í 문ì¥ì ë¹ ì ¸ëì¬ ë ì¬ì©í©ëë¤.
while
, do-while
, for
, ëë switch
문ì ì¢
ë£íê³ ë¤ì ëª
ë ¹ì´ë¡ ëì´ê°ëë¤.break문ì 문ë²ì ë¤ìê³¼ ê°ìµëë¤.
break;
break [ë ì´ë¸];
break문ì 첫ë²ì§¸ íìì ê°ì¥ ì쪽ì ë°ë³µë¬¸ì´ë switch문ì ë¹ ì ¸ëìµëë¤. ëë²ì§¸ íìë í¹ì í ë ì´ë¸ 문ì ë¹ ì ¸ëìµëë¤.
ìì 1ë¤ì ì
for (i = 0; i < a.length; i++) {
if (a[i] == theValue) {
break;
}
}
ìì 2: Breaking to a label
var x = 0;
var z = 0;
labelCancelLoops: while (true) {
console.log("Outer loops: " + x);
x += 1;
z = 1;
while (true) {
console.log("Inner loops: " + z);
z += 1;
if (z === 10 && x === 10) {
break labelCancelLoops;
} else if (z === 10) {
break;
}
}
}
continue 문
continue
문ì while, do-while, for, ë ì´ë¸ 문ì ë¤ì ììí기 ìí´ ì¬ì©ë ì ììµëë¤.
continue 문ì 구문ì ë¤ìê³¼ ê°ìµëë¤:
continue;
continue
label;
ë¤ìì ìë i ê°ì´ 3ì¼ ë ì¤ííë continue 문과 í¨ê» while 루í를 ë³´ì¬ì¤ëë¤. ë°ë¼ì, nì ê° 1, 3, 7, 12를 ì·¨í©ëë¤.
i = 0;
n = 0;
while (i < 5) {
i++;
if (i == 3) {
continue;
}
n += i;
}
ìì 2
checkiandj ë ì´ë¸ 문ì checkj ë ì´ë¸ 문ì í¬í¨í©ëë¤. continueê° ë°ìíë ê²½ì°, íë¡ê·¸ë¨ì checkjì íì¬ ë°ë³µì ì¢ ë£íê³ , ë¤ì ë°ë³µì ììí©ëë¤. ê·¸ ì¡°ê±´ì´ false를 ë°í í ëê¹ì§ continueê° ë°ìí ëë§ë¤, checkjë ë°ë³µí©ëë¤. falseê° ë°íë ë, checkiandj 문ì ëë¨¸ì§ ë¶ë¶ì ìë£ëê³ , ê·¸ ì¡°ê±´ì´ false를 ë°í í ëê¹ì§ checkiandjë ë°ë³µí©ëë¤. falseê° ë°íë ë, ì´ íë¡ê·¸ë¨ì ë¤ì checkiandj 문ìì ê³ìë©ëë¤.
continueê° checkiandjì ë ì´ë¸ì ê°ì§ê³ ìë¤ë©´, íë¡ê·¸ë¨ì checkiandj 문 ìë¨ìì ê³ìë ê²ì ëë¤.
checkiandj: while (i < 4) {
console.log(i);
i += 1;
checkj: while (j > 4) {
console.log(j);
j -= 1;
if (j % 2 == 0) {
continue checkj;
}
console.log(j + " is odd.");
}
console.log("i = " + i);
console.log("j = " + j);
}
for...in
문
for...in
문ì ê°ì²´ì ì´ê±° ìì±ì íµí´ ì§ì ë ë³ì를 ë°ë³µí©ëë¤. ê°ê°ì ê³ ì í ìì±ì ëí´, JavaScriptë ì§ì ë 문ì ì¤íí©ëë¤. for...in 문ì ë¤ìê³¼ ê°ìµëë¤:
for (variable in object) { statements }ìì
ë¤ì í¨ìë ê°ì²´ì ê°ì²´ì ì´ë¦ì í¨ìì ì¸ìë¡ ì·¨í©ëë¤. ê·¸ë° ë¤ì 모ë ê°ì²´ì ìì±ì ë°ë³µíê³ ìì± ì´ë¦ê³¼ ê°ì ëì´íë 문ìì´ì ë°íí©ëë¤.
function dump_props(obj, obj_name) {
var result = "";
for (var i in obj) {
result += obj_name + "." + i + " = " + obj[i] + "<br>";
}
result += "<hr>";
return result;
}
ìì± makeì modelì ê°ì§ ê°ì²´ carì ê²½ì°, ê²°ê³¼ë ë¤ìê³¼ ê°ìµëë¤:
car.make = Ford;
car.model = Mustang;
ë°°ì´
ë°°ì´
ìì를 ë°ë³µíë ë°©ë²ì¼ë¡ ì´ë¥¼ ì¬ì©íëë¡ ì ëë ì ìì§ë§, for...in 문ì ì«ì ì¸ë±ì¤ì ì¶ê°íì¬ ì¬ì©ì ì ì ìì±ì ì´ë¦ì ë°íí©ëë¤. ë°ë¼ì ë§ì½ ì¬ë¬ë¶ì´ ì¬ì©ì ì ì ìì± ëë ë©ìë를 ì¶ê°íë ë± Array ê°ì²´ë¥¼ ìì íë¤ë©´, ë°°ì´ ìì ì´ì¸ìë ì¬ì©ì ì ì ìì±ì íµí´ for...in 문ì ë°ë³µí기 ë문ì, ë°°ì´ì íµí´ ë°ë³µí ë ì«ì ì¸ë±ì¤ì íµìì ì¸ for
루í를 ì¬ì©íë ê²ì´ ì¢ìµëë¤.
for...of
문
for...of
문ì ê°ê°ì ê³ ì í í¹ì±ì ê°ì ì¤íí ëª
ë ¹ê³¼ í¨ê» ì¬ì©ì ì§ì ë°ë³µ íí¬ë¥¼ í¸ì¶íì¬, ë°ë³µ ê°ë¥í ê°ì²´(ë°°ì´
, Map
, Set
, ì¸ì ê°ì²´ ë±ì í¬í¨)를 íµí´ ë°ë³µíë 루í를 ë§ëëë¤.
for (variable of object) { statement }
ë¤ì ìë for...of 루íì for...in
루íì ì°¨ì´ë¥¼ ë³´ì¬ì¤ëë¤. ìì± ì´ë¦ì íµí´ for...inì´ ë°ë³µíë ëì, for...ofì ìì± ê°ì íµí´ ë°ë³µí©ëë¤:
let arr = [3, 5, 7];
arr.foo = "hello";
for (let i in arr) {
console.log(i); // logs "0", "1", "2", "foo"
}
for (let i of arr) {
console.log(i); // logs "3", "5", "7"
}
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