2012-06-03 3 views
0

JavaScript for 루프에서 복합 조건문을 사용할 수 있습니까? 여기 루프 용 JavaScript 내에서 복합 조건문 사용

은 일례이며,

//using a compound conditional statement 
//within a for loop, JavaScript 
for (var i=0; i < res.length && i < 5; i++) {}; 

//or 
for (var i=0; i < res.length || i < 5; i++) {}; 
+0

두 번째 예제가 이러한 논리 오류 또는 예기치 않은 아이러니의 예를 무한히 실행할 수 있다는 사실입니까? – Wiseguy

+0

이것은 다른 것과 같은 논리 문장입니다. 오류는 PEBKAC가됩니다. –

+0

확실한 아이러니! :) – TheBrent

답변

1

예, 다른 코드와 마찬가지로 논리 오류가 발생할 수 있습니다. 다행히도 코드를 테스트하여 오류를 찾아 수정할 수 있습니다.

0

브렌트 - 두 문장은 동일하지 않다. De Morgan's laws을 사용하려고합니다. 따라서 두 번째 문이

var end = res.length < 5 ? res.length : 5; 

for (var i=0; i < end; ++i) {} 

이 오버 헤드 또는 루프를 종료 할 때 운동의 논리를 수행을 감소 할 더 좋을 것이다

for (var i=0; i >= res.length || i >= 5; i++) {}; 

을 읽어야합니다.