[JS] 연산자

yengni·2022년 7월 12일
0

JS

목록 보기
2/11

🧶 연산

: 주어진 식을 계산하여 결과를 얻어내는 과정
1 + 2

  • 피연산자=항=인수 : 연산자가 연산을 수행하는 대상 (1은 첫번째 피연산자, 2는 두번째 피연산자)
  • 연산자 : 프로그래밍 언어로 하여금, 연산을 수행시키는 기호 ( + )

🧶 사칙 연산자 : 이항 산술 연산자

: 피연산자가 2개이다.

  • 더하기 + : 두 값을 더한다.
  • 빼기 - : 두 값을 뺀다.
  • 곱하기 * : 두 값을 곱한다.
  • 나누기 / : 두 값을 나눈다.

🧶 단항 산술 연산자

: 피연산자가 1개이다.
🏷 피연산자의 값을 변경하는 부수효과가 있다

  • ++ : 증가
  • -- : 감소
  • 피연산자 에 위치한 증가/감소 연산자는 먼저 피연산자의 값을 증가/감소 시킨 후, 다른 연산을 수행한다.
  • 피연산자의 에 위치한 증가/감소 연산자는 먼저 다른 연산을 수행한 후 피연산자의 값을 증가/감소시킨다.
  • + : 피연산자를 문자 자료형을 숫자 자료형으로 변환시킨다.
  • - : 피연산자를 문자 자료형을 숫자 자료형으로 변환시키며 -를 붙인다.

예제 )

let a = '5' ;
console.log ( -a ) ;   // -5

🧶 나머지 연산자

  • 나머지 % : 앞의 값을 뒤의 값으로 나눈 나머지 값을 나타낸다.

해설 : % 은 나머지 연산자이므로 10을 3으로 나누면 나머지가 1이기 때문에 1로 출력이 된다.

console.log(10 % 3) // 1

🧶 거듭제곱 연산자

  • 거듭제곱 ** : 거듭제곱하는 연산자이다
a**2
100

🧶 할당 연산자

  • += : y+=x = y=y+x
  • -= : y-=x = y=y-x
  • *= : y*=x = y=y*x
  • /= : y/=x = y=y/x
  • %= : y%=x = y=y%x

🧶 비교 연산자

  • == 연산자와 === 연산자 : 두 연산자 모두 양쪽의 값이 같은지 비교하는 연산자이다.
    🏷 두 연산자의 차이는 ==은 왼쪽과 오른쪽의 값의 자료형과 상관없이 비교한다. 하지만 ===은 왼쪽과 오른쪽의 값은 물론 자료형까지 비교한다.
  • != 연산자와 !== 연산자 : 위의 연산자의 부정 연산자이다.

해설 ) a의 값은 숫자형(Number)이고 b의 값은 자료형(String)이다. a==b자료형을 비교하지 않기 때문에 두 값이 같은 자료형이라는 가정하에 같은 값이라고 출력한다. 하지만 a===b자료형까지 비교하기 때문에 숫자형 자료와 문자형 자료형이 같다고 보지 않아 false 값을 출력한다.
예시 )

let a = 2
let b = '2'
console.log(a == b) //true
console.log(a === b) //false

😺 비교 연산자 주의할 점

1. NAN은 자신과 일치하지 않는 유일한 값이다.

NAN===NAN ; //false

2. 숫자 0에는 양의 0과 음의 0이 있는에이들을 비교하면 true를 반환한다.

📍 -0+0 은 동일하다고 평가한다.

0===-0;  //ture
0==-0;  //true

🧶 대소 관계 비교 연산자

  • <> : 값이 더 큰지 작은지 비교한다.
  • <=>= : 값이 크거나같은지 작거나같은지 비교한다.

🧶 논리 연산자

  • OR 연산자 || : 비교하는 값 중에 하나만 true 값이면 결괏값은 true이다.

😺 OR 연산자 비교하기

OR 연산자는 첫번째 truty를 찾는다.

  • 왼쪽에서 오른쪽으로 값을 평가한다.
  • 첫번째 true 값을 찾으면 멈추고 true로 변환하기 전 원래 값을 반환한다.
  • 모두 평가해도 false 이면 마지막 피연산자 값의 변환전 원래 값으로 반환한다.
alert( 1 || 0 ); // 1 (1은 truthy임)
alert( null || 1 ); // 1 (1은 truthy임)
alert( null || 0 || 1 ); // 1 (1은 truthy임)
alert( undefined || null || 0 ); // 0 (모두 falsy이므로, 마지막 값을 반환함)
  • AND 연산자 && : 비교하는 값이 모두 true인 경우에만 결괏값이 true이다.

😺 AND 연산자 비교하기

AND 연산자는 첫번째 falsy를 찾는다.

  • 왼쪽에서 오른쪽으로 값을 평가한다.
  • 첫번째 flase 값을 찾으면 멈추고 false로 변환하기 전 원래 값을 반환한다.
  • 모두 평가해도 true 이면 마지막 피연산자 값의 변환전 원래 값으로 반환한다.
// 첫 번째 피연산자가 truthy이면,
// AND는 두 번째 피연산자를 반환합니다.
alert( 1 && 0 ); // 0
alert( 1 && 5 ); // 5
// 첫 번째 피연산자가 falsy이면,
// AND는 첫 번째 피연산자를 반환하고, 두 번째 피연산자는 무시합니다.
alert( null && 5 ); // null
alert( 0 && "아무거나 와도 상관없습니다." ); // 0
  • NOT 연산자 ! : ture와 false를 반대로 뒤집어서 결괏값을 낸다.
profile
우당탕탕 비전공자의 FE 개발일지

0개의 댓글

관련 채용 정보