program story

for 루프가 둘 이상 증가 / 감소 할 수 있습니까?

inputbox 2020. 8. 11. 08:23
반응형

for 루프가 둘 이상 증가 / 감소 할 수 있습니까?


for외에 Javascript 에서 루프 를 증가시키는 다른 방법이 있습니까? 예를 들어 1 대신 3 씩 증가시키고 싶습니다.i++++i

for (var i = 0; i < myVar.length; i+3) {
   //every three
}

사용 += 할당 연산자를 :

for (var i = 0; i < myVar.length; i += 3) {

기술적으로는 for 루프의 최종 표현식에 원하는 표현식을 배치 할 수 있지만 일반적으로 카운터 변수를 업데이트하는 데 사용됩니다.

for 루프의 각 단계에 대한 자세한 내용은 MDN 문서를 확인하세요 .


for루프 :

for(INIT; TEST; ADVANCE) {
    BODY
}

다음을 의미합니다.

INIT;
while (true) {
    if (!TEST)
        break;
    BODY;
    ADVANCE;
}

당신은 거의 모든 표현을 쓸 수 INIT, TEST, ADVANCE,와 BODY.

++연산자와 변형은 부작용이 있는 연산자 라는 점에 유의 하세요 (예 i+=1를 들어 사용하지 않는 경우에는 피해야합니다 ).

  • ++i 방법 i+=1; return i
  • i++ 방법 oldI=i; i+=1; return oldI

예:

> i=0
> [i++, i, ++i, i, i--, i, --i, i]
[0, 1, 2, 2, 2, 1, 0, 0]

for (var i = 0; i < 10; i = i + 2) {
    // code here
}​

Andrew Whitaker의 대답은 사실이지만 어떤 부분에도 어떤 표현이든 사용할 수 있습니다.
두 번째 (중간) 표현식은 부울 true또는 false.

for루프를 사용하면 다음과 같이 생각합니다.

for (var i = 0; i < 10; ++i) {
    /* expression */
}

존재로

var i = 0;
while( i < 10 ) {
    /* expression */
    ++i;
}

당신은 확실히 할 수 있습니다. 다른 사람들은 당신이해야 할 일을 정확하게 지적했습니다 i += 3. 여기에서 수행하는 작업은 모두 추가 i + 3하지만 결과를에 다시 할당하지 않기 때문에 게시 한 작업을 수행 할 수 없습니다 i. i++단지 속기이다 i = i + 1유사 i +=3위한 속기이다 i = i + 3.


for (var i = 0; i < myVar.length; i+=3) {
   //every three
}

추가

Operator   Example    Same As
  ++       X ++        x = x + 1
  --       X --        x = x - 1
  +=       x += y      x = x + y
  -=       x -= y      x = x - y
  *=       x *= y      x = x * y
  /=       x /= y      x = x / y
  %=       x %= y      x = x % y

The last part of the ternary operator allows you to specify the increment step size. For instance, i++ means increment by 1. i+=2 is same as i=i+2,... etc. Example:

let val= [];

for (let i = 0; i < 9; i+=2) {
  val = val + i+",";
}


console.log(val);

Expected results: "2,4,6,8"

'i' can be any floating point or whole number depending on the desired step size.

참고URL : https://stackoverflow.com/questions/12809776/can-a-for-loop-increment-decrement-by-more-than-one

반응형