후치연산자 Increment ++
피연산자를 증가(1을 더함)하고 값을 반환함.
전치연산자
피연산자 앞에 연산자가 있는 접두사를 사용하는 경우 증가 연산자는 증가하고 증가후 값을 반환함.
앞에 ++가 나오면 표현식을 평가하기 전에 1증가.
후치연산자
let x = 3;
const y = x++;
console.log(x); //4
console.log(y); //3 세미콜론;다음에 증가함. y는 할당된 3이며 세미콜론 뒤에 증가되어 x에 할당됨. 그러면 4
전치연산자
let a = 3;
const b = ++a;
console.log(a); //4
console.log(b); //4 문장안에서 1 증가. 3에서 1증가했으니 4. 그리고 그걸 다시 a에 할당하면 4.
더하기 할당 +=
오른쪽 피연산자의 값을 변수에 더한 결과를 다시 변수에 할당함. 덧셈 또는 문자열 연결 가능.
let a = 2;
let b = 'hello';
console.log(a +=3); // 5 더하기 a에 2를 할당하고 +3한 값을 다시 a에 할당하여 5산출.
console.log(b +='world'); // "hello world" 문자열연결 b에 'hello'를 할당하고 'world'를 연결한 다음 'hello world'를 b에 할당.
!= 연산자
왼쪽과 오른쪽 값이 다르면 true 같으면 false
a != b와 !(a === b)가 같음.
조건(삼항)연산자
세개의 피연산자를 받는 유일한 연산자. 조건 연산자는 주어진 조건에 따라 두 값중 하나를 반환함.
condition ? val1 : val2
var status = (age>=18) ? "성인" : "미성년자" //18세 이상이면 status에 "성인"을 할당하고 그렇지 않으면 "미성년자"를 할당함
while
조건문이 참일 때 실행되는 반복문.
조건은 문장안이 실행되기 전에 참, 거짓을 판단한다
while(condition)
var n = 0;
var x = 0;
while(n<3) {
n++;
x += n;
} //n이 3보다 작을 때 반복함. 처음에는 n에 0이 할당되어 n++의 결과값은 1이며 x += n에서 x에 1을 더 한 후 다시 x에 할당(1)
//다시 조건을 비교한 뒤(true) 이번에는 1이 n에 할당됨. n++의 결과값은 2이며 x += n에서 x에 2를 더한 값이 다시 x에 할당됨(3)
//또 다시 조건을 비교한 뒤(true) 이번에는 2가 n에 할당됨. n++의 결과값은 3이며 x += n에서 x에 3을 더한 값을 다시 x에 할당(6)
//n = 1, x =1 n=2, x=3 n=3, x=6
do..while
테스트 조건이 거짓으로 평가될때까지 지정된 구문을 실행하는 루프를 만듦.
단, 구문이 실행된 뒤에 테스트 조건이 평가됨으로 구문은 무조건 한번 실행됨.
do 구문 while(조건식);
let result = '';
let i = 0;
do{
i = i+1; //처음 i에 0이 할당되고 1산출
result = result + i; //처음 i에 1이 할당되었고 그걸 result에 string형태로 보관.
//그 다음에는 다시 i=1일때 참이 되어 i = i+1에서 2가 i에 할당됨.
//이후 result에 '1'+2가 할당되는데 이때 더하기가 아닌 문자열연결이 됨.
//이렇게 4까지 진행되며 '12345'가 산출됨.
} while (i<5);
console.log(result); //12345
for()문을 이용하여
1~50까지 반복하면서 홀수번째 값과 짝수번째 값을 누적하고 반복한 값을 누적함.
반복이 완료되면 누적한 홀수번째 값과 짝수번째 값을 출력하고 전체값도 출력함.
let evenAnswer = 0;
let oddAnswer = 0;
let i = 0;
for(i=0; i<=50; i++){
if(i%2==0){
evenAnswer += i;
}
else {
oddAnswer += i;
}}
console.log(evenAnswer);
console.log(oddAnswer);
console.log(evenAnswer+oddAnswer);
한번에 바로 짜지는 못했지만 += 를 활용해 짤 수 있어 좋았음.
break
반복문(for, for~in, while, do~while, switch)에서 사용.
반복문을 종료하고 그 다음문으로 프로그램 제어를 넘김.
break[label];
switch에서는 label을 필수로 제공해야함.
let i = 0;
while(i<6) {
if(i===3){
break;
}
i = i+1;
}
console.log(i); //3 처음에 0이 할당되었을 때 i = i+1로 i에 1할당, 이후 i가 1일때 2가 할당, i가 2일때 3이 할당되며
//i가 3이되면 if문이 false가 되어 실행되지 않음. 그러므로 i문을 실행했을 때 3이 할당됨.
'javascript' 카테고리의 다른 글
기본개념 3 Object (0) | 2022.01.07 |
---|---|
기본개념2 statement (0) | 2022.01.07 |
Array 오브젝트 reverse() (0) | 2021.11.14 |
Array 오브젝트 엘리먼트 삭제 (0) | 2021.11.14 |
배열과 관련된 문제풀이 (0) | 2021.11.11 |