자바스크립트 정리 1 (연산자)

자바스크립트 난독화 공부를 하면서 자바스크립트에 대해 좀 더 공부해보고 싶어졌다 !!

내가 자바스크립트를 공부하면서 새롭게 알았거나, 꼭 알아두어야 하는 것들을 정리해본다.

상식적인 것이나 대부분 알고 있는 내용은 과감히 생략해 본다.  

 

## 자바스크립트란? -> 검색!!

## 기초지식
1. 문장종료: 세미콜론(;)을 사용하여 종료
2. 주석처리: // 한줄 주석 처리, /*   */ 여러줄 주석 처리
3. 변수 선언: var 를 이용하여 선언, 데이터 타입 명시하지 않음. (var 쓰지않아도됨)


## 식별자 (변수의 이름이나 함수의 이름)

1. 대소문자를 구별한다
2. 식별자의 첫글자는 반드시 문자나 _, $로 시작되어야한다 (숫자 X)
3. _, $를 제외한 특수문자는 식별자에 사요할 수 없다
4. var 처럼 키워드는 식별자로 사용할 수 없다


## 연산자

⊙ 피연산자의 갯수에 따른 종류: 단항 연산자, 이항연산자, 삼항 연산자
  ex) 단 항 연산자: i++, i-- ...
  ex) 이 항 연산자: 1+2, 4-3, 12/3 ...
  ex) 삼 항 연산자: (a==b) ? 2:4

 

 연산자의 종류와 우선순위
  - 증감연산자 > 산술연산자 > 비교연산자 > 논리연산자 > 할당연산자

 

1.산술연산자
  - 사칙연산하는 연산자 (+, -, *, %)
  - 더하기(+)는 문자열을 더하기 연산가능하지만 다른 연산자는 할 수 없다  
  ex) 더하기
     1+20= 21, 1+'20'= 120, '1'+'20'=120, '가'+'나'=가나 ..
  ex) 빼기
     1-20=-19, '1'-20=-19, '1'-'20'=-19, '가'-'나'=NaN   
  - 데이터 값이 true이면 숫자 1로, false 이면 숫자 0으로 연산된다.

 

1.1 증가(++)연산자, 감소(--)연산자
  - 전치 증가/감소 (++i): 연산자가 피연산자 앞에 오는 경우 피연산자에 1을 더한 수 값을 돌려준다.
  - 후치 증가/감소 (i++): 연산자가 피연산자 뒤에 오는 경우 피연산자 값을 돌려준 후 1을 증가 시킨다.   
  ex) 전치 증가
    a = 10;
    b = ++a;
    alert(b);  //-- b = 11
    alert(a);  //-- a = 11

 

  ex) 후치 증가
    a = 10;
    b = a++;
    alert(b);  //-- b = 10
    alert(a);  //-- a = 11

 

2.관계 연산자

2.1 동등 연산자(==) 와 일치 연산자(===)
  - 동등연산자: 데이터 타입이 달라도 변환했을 때 같은 값을 가질 수 있으면 true, 데이터값이 다르면 false를 반환
  - 일치연산자: 값뿐만아니라 데이터 타입도 같아야 true를 반환함

  ex) 동등연산자와 일치연산자 비교
    a = 7;
    b = "7";
    alert(a==b);     //-- true 를 반환
    alert(a===b);    //-- false를 반환

 

2.2 비동등 연산자(!=) 와 불일치 연산자 (!==)
  - 피연사잔의 값이 동일할 때 false를 불일치 할 때 true를 나타낸다.
  - 2.2.1과 동일하게 비동등연산자는 데이터 변환을 허용하고, 불일치 연산자는 데이터 타입도 비교한다.

 

2.3 비교연산자(<, >, <=, >=)
  - 두 피연산자를 비교하여 true 또는 false를 반환한다.
  - 숫자 뿐만아니라 문자도 비교 가능하고, 두 데이터의 비교가 불가능 할 경우 항상 false가 반환된다. 
  ex) a = "abc";
      b = "bcd";
      alert(a<b);   //-- true를 반환 (b가 a보다 크다고 인식됨, "가", "나"를 비교하면 "나"를 크다고로 인식함

    => 한번씩 해보세요~

 

3. 논리 연산자

  - && : and 연산자 
  - || : or 연산자
  - ! : NOT 연산자 (피연산자의 값이 true이면 false, false이면 true를 돌려주는 연산자)

 

4 비트 연산자 (2진수에 대한 연산)
  - & : and 연산자
  - | : or 연산자
  - ^ : xor 연산자
  - ~ : NOT 연산자

 

4.1 쉬프트 연산자 (>>, <<, >>>): 방향에 따라 오른쪽, 왼쪽으로 비트를 이동한다.
  - >> 연산자는 오른쪽으로 이동 후 부호 비트에 양수는 0, 음수는 1로 채운다
  - >>> 연산자는 오른쪽으로 이동 후 부호 비트에 무조건 0으로 채운다.

 

5. 할당 연산자
  - a = 11 처럼 a의 변수에 11 이라는 데이터 값을 할당하는 것
  - 종류: +=, -=,*=,%=, >>=, <<=, >>>=, &=, ^= ...

  ex) +=의 사용(더하기 후 할당한다)
    a = 10;
    b = 2;
    b += a;     // b = b + a; 와 동일한 표현이다.
    alert(b);   //--  12 
  
6. 기타연산자
  - 3항 연산자 - [조건] ? [참일때 값] : [거짓일때 값]

 ex) 

      a=4;

      b=5;
      c = (a >= b)?'a>b':'b>a';  //-- a>b 참이면 a>b를 출력하고, 거짓이면 b>a를 출력

      alert(c);                          //-- 출력값: b>a

 

 

  - typeof 연산자: 데이터의 타입을 확인 할 때 사용  
  ex) a = 11;
      alert(typeof(a));   //-- number  (데이터의 타입이 출력됨)
  

 

설정

트랙백

댓글