자바스크립트 for length / for in / for of

자바스크립트에서 for 루프문의 가장 클래식한 형태는 아래와 같습니다.

[code]

<script>
my = "";
you = ["하나 ", "둘 ", "셋 ", "넷 ", "다섯"];
for (i = 0; i < you.length; i++) {
    my += you[i];
}
document.write(my);
</script>
<!-- 결과 : 하나 둘 셋 넷 다섯 -->

[/code]

 

for in 을 쓰면 더 간략합니다. length 가 필요없습니다.

단 포인문은 배열을 위해 존재하는 것이 아니라 객체를 위해 존재하는 구문입니다.

배열도 하나의 오브젝트니까요.

[code]

<script>
my = "";
you = ["하나 ", "둘 ", "셋 ", "넷 ", "다섯"];
for (i in you) {
    my += you[i];
}
document.write(my);
</script>
<!-- 결과 : 하나 둘 셋 넷 다섯 -->

[/code]

 

요즘은 for of 로 전향하는 추세입니다.

length 는 물론 대괄호도 필요없이 변수의 맨몸뚱아리를 그대로 호출합니다.

단 IE 에서는 먹빡입니다.

[code]

<script>
my = "";
you = ["하나 ", "둘 ", "셋 ", "넷 ", "다섯"];
for (i of you) {
    my += i;
}
document.write(my);
</script>
<!-- 결과 : 하나 둘 셋 넷 다섯 -->

[/code]

 

----------

----------

 

참고로 포인문은 오브젝트를 위해 존재하는 구문이라고 하였습니다.

예컨대 div 는 어떤 것들을 갖고 있는지 확인하려면...

[code]

<div id="you"></div>
<script>
my = "";
for (i in you) {
    my += you[i];
}
document.write(my);
</script>

[/code]

|

댓글 6개

감사합니다. 많이 배웁니다.
@김철용 이건 꼭 알고 넘어가셔야 합니다.ㅋ
for of는 처음 보는 문법이네요.
@SimpleCode
요즘은 포이치문도 씁니다만...
근데 포이치문을 쓰면 어딘지 모르게 생경하고 무엇보다도 글자가 길어서 영 안 땡기더라구요.
가독성이 떨어진달까요?

저도 두세달 전까지는 포오브를 안 썼어요.
고객 중에 빌어먹을 익스 사용하는 바보같은 놈이 하나 있어서요.
그 놈이 떨어져 나가고 나서는 무조건 포오브로 씁니다. 너무 편합니다. 그냥 맨몸뚱아리로 호출하니까요.ㅋ
for of는 또 첨 보네요ㅎㅎㅎ 역시 자스 직관적이야
감사합니다. javascript 공부에 도움이 많이 됩니다. ㅎ
댓글을 작성하시려면 로그인이 필요합니다. 로그인

개발자팁

개발과 관련된 유용한 정보를 공유하세요. 질문은 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
기타 3년 전 조회 1,315
기타 3년 전 조회 1,518
기타 3년 전 조회 1,353
웹서버 3년 전 조회 2,247
PHP 3년 전 조회 1,378
PHP 3년 전 조회 2,083
PHP 3년 전 조회 1,574
JavaScript 3년 전 조회 2,185
JavaScript 3년 전 조회 2,114
기타 3년 전 조회 1,474
JavaScript 3년 전 조회 2,032
기타 3년 전 조회 1,389
기타 3년 전 조회 2,337
웹서버 3년 전 조회 3,410
JavaScript 3년 전 조회 2,127
기타 3년 전 조회 1,698
웹서버 3년 전 조회 1,785
node.js 3년 전 조회 1,732
JavaScript 3년 전 조회 1,504
웹서버 3년 전 조회 3,176
JavaScript 3년 전 조회 4,110
JavaScript 3년 전 조회 2,158
JavaScript 4년 전 조회 2,521
기타 4년 전 조회 2,795
OS 4년 전 조회 1,713
웹서버 4년 전 조회 1,807
기타 4년 전 조회 1,603
기타 4년 전 조회 1,728
기타
[기타]
4년 전 조회 2,370
기타 4년 전 조회 2,699
🐛 버그신고