JavaScript에서는 ++
연산자를 사전 증가 ( pre-increment ) 또는 변수 이름 ( post-increment ) 뒤에 사용할 수 있습니다 . 변수를 증가시키는 이러한 방법의 차이점은 무엇입니까?
JavaScript에서는 ++
연산자를 사전 증가 ( pre-increment ) 또는 변수 이름 ( post-increment ) 뒤에 사용할 수 있습니다 . 변수를 증가시키는 이러한 방법의 차이점은 무엇입니까?
답변:
다른 언어와 동일
++x
(사전 증가)는 "변수 증가; 표현식의 값은 최종 값"을 의미합니다.x++
(증분 후)는 "원래 값을 기억하고 변수를 증가시킵니다. 표현식의 값은 원래 값입니다"를 의미합니다이제 독립형 명령문으로 사용될 때 동일한 의미를 갖습니다.
x++;
++x;
다른 곳에서 표현식의 값을 사용할 때 차이가납니다. 예를 들면 다음과 같습니다.
x = 0;
y = array[x++]; // This will get array[0]
x = 0;
y = array[++x]; // This will get array[1]
+ 1
대신에 이것을 사용하면 ++
어떻게 보일까요? 숫자를 추가 할 때 전후에 증가시키는 방법이 있습니까?
x
10으로 시작하면 값 r1
은 21이며 10 + 11입니다. 첫 번째 x++
표현식 의 값 은 10이고 x
11로 증가합니다. 두 번째 x++
표현식 의 값 은 11이고 x
12로 증가합니다.
당신이 그들을 독립형으로 사용한다면 내가 이해하는 것처럼 그들은 같은 일을합니다. 결과를 표현식으로 출력하려고하면 결과가 다를 수 있습니다. 차이점을 보려면 alert (++ i)와 비교하여 alert (i ++)을 시도하십시오. i ++는 추가하기 전에 i로 평가하고 ++ i는 평가하기 전에 추가를 수행합니다.
예는 http://jsfiddle.net/xaDC4/ 를 참조하십시오 .
증가 후 및 증가 후 이해에 대한 설명이 있습니다. 여기에 넣겠습니다.
에 할당 0
할 수 있습니다x
let x = 0;
증분 후 시작
console.log(x++); // Outputs 0
왜?
x++
표현을 세분화 하자
x = x;
x = x + 1;
첫 번째 문장 x
은0
나중에 x
어디에서나 변수 를 사용 하면 두 번째 문이 실행됩니다.
두 번째 명령문은이 x + 1
표현식 의 값을 리턴합니다.(0 + 1) = 1
x
이 상태에서 의 가치를 명심하십시오.1
이제 사전 증분부터 시작하겠습니다
console.log(++x); // Outputs 2
왜?
++x
표현을 세분화 하자
x = x + 1;
x = x;
첫 번째 명령문은이 x + 1
표현식 의 값을 리턴합니다.(1 + 1) = 2
두 번째 문은의 값 반환 x
되는 2
그래서 x = 2
따라서 반환2
이것이 증가 후 및 증가 후가 무엇인지 이해하는 데 도움이되기를 바랍니다!