모던 자바스크립트 Day 9

이현정·2022년 4월 7일
1

🔖 읽은 범위: 7장 연산자(Operator)

Preview

https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Expressions_and_Operators

☘️ 책갈피

연산자와 피연산자

  • 연산자(operator): 산술, 할당, 비교, 논리, 타입, 지수 연산 등을 수행하여 하나의 값을 만든다.
  • 피연산자(operand): 연산의 대상.

연산자의 종류

1. 산술 연산자

  • 이항 산술 연산자 (+,-,*,/,%)
    • 연산자 + 는 피연산자가 하나라도 문자열인 경우, 문자열 연결 연산자로 동작한다.
  • 단항 산술 연산자 ( ++, --, +, -) 🌟
    • ++, -- ( 증가, 감소) 단항 산술 연산자는 붙는 위치에 의미가 있다.
      예를 들어, 피연산자 앞에 위치한 전위 증가/감소 연산자는 먼저 피연산자의 값을 증가/감소시킨 후, 다른 연산을 수행한다. 반면, 피연산자 뒤에 위치한 전위 증가/감소 연산자는 먼저 다른 연산을 수행한 후, 피연산자의 값을 증가/감소시킨다.
    • 단일연산자 +, - 는 숫자 타입으로 변환하지만, 부수 효과는 없다.

2. 할당 연산자

  • =
  • +=
  • -=
  • *=
    x *= 6 는 x = x * 6 과 같다.
  • /=
  • %=

3. 비교 연산자

  • 동등(==)/일치(===) 비교 연산자
  • 값 뿐만 아니라 값의 타입까지 일치하는지 비교하느냐 아니냐의 차이이다.
  • 대소 관계(<,>,<=,>=) 비교 연산자

4. 삼항 조건 연산자 🌟

  • '조건식' ? '조건식이 true 일 떄 반환할 값' : '조건식이 false 일 때 반환할 값'
  • If..else 문처럼 사용 가능하지만 차이점은 삼항 조건 연산자 표현식은 값처럼 사용 가능하다.

5. 논리 연산자

  • || (or)
  • && (and)
    - ! (not)

6. 쉼표 연산자
7. 그룹 연산자
8. typeof 연산자

  • 7개의 문자열(string, number, boolean, undefined, symbol, object, function) 중 하나를 반환한다.
  • 7개의 데이터 타입(string, number, boolean, undefined, null, symbol, object) 과 정확히 일치하지는 않는다.
  • null 타입의 값의 경우, typeof null 시 object 를 내놓는다.

9. 지수 연산자

  • ex) 2**3 = 8
  • ES7 에서 도입되었다. 이전에는 Math.pow 매서드를 사용했다.
  • 음수의 경우 () 로 묶어야 작동한다.
    ex) (-5)**2 = 25

10. 그외에 다양한 연산자가 있다.

연산자의 부수효과

  • 대부분의 연산자는 다른 코드에 영향을 주지 않는다. 🌟
  • 할당 연산자(=), 증가/감소 연산자(++/--), delete 연산자는 예외🌟

?의문점

x

‼️ 느낀점

  • 연산자... 이것저것 필요할 때마다 깔짝깔짝 접하기만 하다가 아예 어떤식으로 분류되고 어떤 기능을 하는지 제대로 확인할 수 있었던 시간이었다.
  • 단항 산술 연산자: ++, --, +, - 의 개념을 처음 접했고, +의 암묵적 타입 변환 기능에 대해 다시 한 번 정리할 수 있는 기회가 되었다.
  • 할당 연산자 (ex. x += 5 는 x = x+5)
  • 동등/일치 비교가 비교의 강도정도였군... 타입을 확인하느냐 안하느냐. 가능하면 일치 비교 쓰기.
  • 삼항 조건 연산자 ( 조건문 ? true 값 : false 값) 과 if else 문이 같은 건줄 알았는데 값으로 사용 가능/불가능의 차이가 있었구나.

💖 요약

x

0개의 댓글