studyplan
전위 연산(prefix), 후위 연산(postfix) / 자바스크립트 javascript /2022.04.24 본문

// 전위 연산(prefix), 후위 연산(postfix)
var a = 10;
// var b = a++; // a 뒤에 ++ 이 있어서 후위연산자로 b = a 를 먼저 수행하고 , a ++ 을 수행
var b = ++a; // 전위 연산자로 ++ a 로 a 1 증가 후 증가 된 a가 b에 대입 됨.
console.log(`a: ${a}, b:${b}`);
var c = 5;
var d = ++c * 2;
console.log(`c:${c}, d:${d}`);
// a,b,c,d,e 의 값을 각각 구하시오. / a:11 , b:11 -> 132 , c : 11 , d : 11 , e: 131 <- 오답
// a,b,c,d,e 의 값을 각각 구하시오. / a:11 , b:11 , c : 6 , d : 12 , e: <-
var e = --b + c++ * d;
console.log(`a:${a}, b:${b}, c:${c}, d:${d}, e:${e}`);
a = 10
b = a에다가 ++ 한 값 = 11 / 면 답은
근데 여기서 출력을 하게되면 a 에다가 1을 더했으니까 a는 11로 바뀌고 11로바뀐걸 b에 대입했으니까
console.log(`a: ${a}, b:${b}`);
a = 11 , b = 11 로 나온다

그 다음
현재까지
a = 11 , b = 11 이고 c = 5 다
var d = ++c * 2;
여기서 d 를 구하면 햇갈릴꺼다
c에다가 ++를 먼저 할지 곱셈을 할지
var c = 5;
var d = ++c * 2; //
console.log(d);// 6*2=12
console.log('---------------------------------');
var d = c++ * 2; // 6*2=12
console.log(d);

둘다 12로 나왔다
응용을 해보자
var e = --b + c++ * d;
console.log(`a:${a}, b:${b}, c:${c}, d:${d}, e:${e}`);
를 구해보자
맨 앞에서
a = 11 , b = 11 이고 c = 5 까지 구했고
바로 위에서
var d = ++c * 2; //
console.log(d);// 6*2=12
까지 구했다 ..
결론은
a = 11 , b = 11 이고 c = 5 d = 12 이다
다 연산을 해보면
a 는 건드린게 없으니까
a = 10
b에다가는 -1을 해서
b= 10
c 는 앞에서 ++ 했고 바로 위에 식에서도 ++ 했으니까
c = 6에서 7이 됐다
결론 c = 7
d 도 아무것도 안했으니까
d = 12
그래서 e 를 구하면
e = 10 +7* 12 = 94
출력하면

'javascript 복습' 카테고리의 다른 글
| 두 값의 차이 구하기 , 절댓값 문제 // if 문제 / 자바스크립트 , javascript (0) | 2022.05.01 |
|---|---|
| 최솟값 구하기 / if 문 quiz 03// 자바스크립트 , javascript (0) | 2022.05.01 |
| 양수 , 음수 판단 문제/if quiz02 /if , else if , else / javascript (0) | 2022.04.29 |
| 중첩 if문 // nesting if quiz/ if quiz01 / javascript / && , || 논리연산자 (0) | 2022.04.29 |
| 전위 연산(prefix), 후위 연산(postfix) /앞++ 뒤++/케이스 !! / 자바스크립트 javascript (0) | 2022.04.25 |
Comments