테스트 사이트 - 개발 중인 베타 버전입니다

자바스크립트 역for문 질문 채택완료

ㅁㅇㅁㅇㅁㅇ 7년 전 조회 3,397

var array= [1,2,3,4,5]; for(var i=array.length-1;i>=0;i--){   alert(array[i]); }

에서 for문을 약간 수정해서

i=0;일 때은 왜 실행이 안되는걸까요..?

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

채택된 답변
+20 포인트
Policia
7년 전

var array= [1,2,3,4,5]; for(var i=array.length-1;i=0;i--){   alert(array[i]); }

일때 말씀하시는거죠?

 

i=0 이 뭘까요? 대입이죠? 즉 i는 0이라고 선언하는 겁니다..

 

해당 위치에는 조건문(비교)이 와야합니다

 

즉 i==0가 맞는데 이것을 선언한다고 또 루프가 돌아가진 않을껍니다.. 왜냐하면

 

기존에 i>=0 란말은 i가 0보다 크거나 같을때만 루프를 돌라는 이야기가 됩니다

 

그럼 이것을 i==0로 바꾸면 i는 0일때만 루프를 돌라는 말이됩니다

 

i가 처음에 선언을 i=array.length-1 으로 해줬기때문에 i=4가 됩니다

 

맨처음 시작이 i=4란 말입니다 그러니깐 조건에서 i==0가 성립할수없어서 또한 for문이 멈춰버립니다

 

구현하고자 하시는게 어떤건지는 잘모르겠으나.. 참고하시면 좋을듯합니다

로그인 후 평가할 수 있습니다

답변에 대한 댓글 2개

P
Policia
7년 전
횡설수설이 많아서 수정 많이했는데.. 이해하실지 모르겠습니다
도움이 되었으면합니다..
ㅁㅇㅁㅇㅁㅇ
7년 전
도움 많이 되었습니다 자세한 답변 정말 감사합니다~

댓글을 작성하려면 로그인이 필요합니다.

7년 전

i 값이 0일 때 조건을 추가로 주어도 됩니다.

</p>

<p>var array= [1,2,3,4,5];

for(var i=array.length-1;i>=0;i--){</p>

<p>  if (i == 0)

    alert(array[i]);

}</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

ㅁㅇㅁㅇㅁㅇ
7년 전
답변 감사합니다
채택은 위 분으로해서 죄송해요ㅎㅎ..

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인