▶ 논리 연산자는 주어진 논리식을 판단하여 참과 거짓을 반환한다.
and(&&) 연산 : 두 논리식 모두 참이면 참을 반환하는 연산자
or(||) 연산 : 두 논리식 중 하나라도 참이면 참을 반환하는 연산자
not(!) 연산 : 논리식의 결과가 참이면 거짓, 거짓이면 참으로 변환하는 연산자
<html>
<body>
<script>
'use strict';
const num1 = 10;
const num2 = 5;
let result1 = num1 == num2; //false
let result2 = num1 >= num2; //true
document.write(`result1 && result2: ${result1 && result2}`);
document.write(`result1 || result2 : ${result1 || result2}`);
document.write(`!result1 : ${!result1}`);
</script>
</body>
</html>
▶ 변수나 상수에 값을 대입할 때 사용하는 연산자이다.
= : 우측의 값을 왼쪽(변수 또는 상수)에 대입
+=, -=, *=, /=, %=, = : 우측의 값을 왼쪽의 값과 연산 후 다시 왼쪽 변수에 대입
<html>
<body>
<script>
'use strict';
let num1 = 10;
let num2 = 10;
let num3 = 10;
num1 += 10;
console.log(`num1 += 10 : ${num1}`);
num2 -= 10;
console.log(`num2 -= 10 : ${num2}`);
num3 *= 10;
console.log(`num3 *= 10 : ${num3}`);
</script>
</body>
</html>
▶ 비교 연산자는 피연산자 사이의 상대적인 크기를 판단하여 참 또는 거짓을 반환합니다.
> : 크다
< : 작다
>= : 크거나 같다
<= : 작거나 같다
== : 같다("10" == 10은 true > 타입이 달라도 값이 같으면 참)
=== : 같다("10" === 10은 false > 타입과 값이 같아야 참)
!= : 다르다 (값만 같으면 false, 값이 같으면 true)
!== : 다르다 (값, 타입 둘 중 하나만 다르면 true)
<html>
<body>
<script>
'use strict';
const num1 = 3;
const num2 = 5;
const str1 = "3";
const str2 = "abcde";
const str3 = "bcd";
let result = num1 > num2;
console.log(`num1 > num2 : ${result}`);
result = str2 <= str3;
console.log(`str2 <= str3 : ${result}`);
result = num1 == str1;
console.log(`num1 == str1 : ${result}`);
result = num1 === str1;
console.log(`num1 == str1 : ${result}`);
result = num1 != str1;
console.log(`num1 != str1 : ${result}`);
result = num1 !== str1;
console.log(`num1 !== str1 : ${result}`);
</script>
</body>
</html>
▶ 산술 연산자는 사칙연산 및 기본적인 연산을 하는 연산자이다.
+ : 덧셈
- : 뺄셈
* : 곱셈
/ : 나눗셈
% : 나눈 나머지의 값 (ex 10%3 = 1)
** : 거듭제곱 (ex 2**2 = 4)
<html>
<body>
<script>
'use strict';
const num1 = Number(prompt('첫번째 숫자를 입력하세요'));
const num2 = Number(prompt('두번째 숫자를 입력하세요'));
let result = num1 + num2;
console.log(`num1 + num2 = ${result}`);
result = num1 - num2;
console.log(`num1 - num2 = ${result}`);
result = num1 * num2;
console.log(`num1 * num2 = ${result}`);
result = num1 / num2;
console.log(`num1 / num2 = ${result}`);
console.log('num1' + ' / ' + 'num2' + '=' + result);
result = num1 % num2;
console.log(`num1 % num2 = ${result}`);
result = num1 ** num2;
console.log(`num1 ** num2 = ${result}`);
</script>
</body>
</html>
* prompt('첫번째 숫자를 입력하텍스트세요') → prompt() 값을 입력할때 사용하는 자바스크립트 함수
* num1 = 10 , num2= 20을 대입하였다.
▶ 조건식에 따른 참, 거짓에 따라 반환값이 달라지는 연산자
조건식 ? 결과1 : 결과2
조건식이 참이면 결과1을 실행
조건식이 거짓이면 결과2를 실행
조건식 && 결과1
조건식이 참일때만 결과1을 실행하고
조건식이 거짓이면 실행을 하지않음
<html>
<body>
<script>
'use strict';
const num1 = Number(prompt('첫번째 숫자를 입력하세요'));
const num2 = Number(prompt('두번째 숫자를 입력하세요'));
const result = num1 > num2 ? num1 : num2;
console.log(`입력한 두 수에서 큰 수는 ${result}입니다`);
document.write(`입력한 두 수에서 큰 수는 ${result}입니다`);
</script>
</body>
</html><body>
<script>
'use strict';
const num1 = Number(prompt('첫번째 숫자를 입력하세요'));
const num2 = Number(prompt('두번째 숫자를 입력하세요'));
const result = num1 > num2 ? num1 : num2;
console.log(`입력한 두 수에서 큰 수는 ${result}입니다`);
document.write(`입력한 두 수에서 큰 수는 ${result}입니다`);
</script>
</body>
</html>
▶ 증감연산자는 1씩 값을 증가시키거나 또는 감소시킬 때 사용하는 연산자이다.
▶ 연산자의 위치가 어디에 있는지에 따라 결과가 달라질 수 있다.
++변수 : 변수의 값을 1증가시킨 후, 다음 연산을 진행 (전위연산자)
변수++ : 먼저 연산을 수행한 후, 변수의 값을 1증가 시킴 (후위연산자)
--변수 : 변수의 값을 1감소시킨 후, 다음 연산을 진행 (전위연산자)
변수-- : 먼저 연산을 수행한 후, 변수의 값을 1 감소 시킴 (후위연산자)
<html>
<body>
<script>
'use strict';
let a = 10;
let b = 20;
let c = 3;
document.write(++a);
document.write(a++);
document.write(c++);
document.write(++a + b++)
document.write(++a + ++b);
</script>
</body>
</html>