본문 바로가기
각종 언어 기본 문법/Java Script

자바스크립트 기초 강의 - 2 변수연산 변수타입 반복문 조건문

by 혀니쌤1 2022. 3. 20.

목차

    ■ 변수 연산 및 타입

    • typeof <변수>라고 하면 타입이 뜸.  예: console.log(typeof 3);  console.log(typeof "xxx"); 
    • 개인 코딩에서는 굳이 typeof를 사용할 일이 없을 테지만, 단체프로젝트나 api통신등에 따라 받아온 변수를 타입에 따라 알맞게 처리해야할 때 사용된다.
    • boolean은 true, false라고 기입 (자바처럼, 전체 소문자)
    • 숫자를 0으로 나누면 ZeroDivisionError가 아니라 Inf 반환
    • 문자열/3 등의 잘못된 연산을 하면 에러가 뜨는 것이 아니라 NaN이 반환
    • null은 존재하지 않은 값, undefined는 값이 미할당일 때 뜸.
      let x; console.log(x); 라고 하였을 때 undefined가 뜸
      let x = null; console.log(x);라고 하였을 때 null이 뜸
      그런데 typeof undefined는 "undefined"라고 뜨는데, typeof null은 "object" (=객체형) 라고 뜸 주의
      참고로 null은 객체형이 아닌데도 불구하고 객체형이라고 뜨는데, 이는 초기 자바스크립트의 오류임.
    • 객체형 과 심볼형은 추후에 설명
      (링크삽입)
    • 변수타입 형변환은 Boolean(), Number(), String()으로 가능

     

     

    ■ 계산

     

    • 파이썬처럼 문자열*3을 했을 때 해당 문자열이 반복해서 붙여지지는 않음. 단 문자열+문자열은 서로 concatenate됨.
    • 문자열 + 숫자형 + 문자열을 했을 때엔, 숫자형이 문자열로 변환됨.
      console.log("300" + 200) 이던 console.log(300 + "200")이던  500이 아닌 300200이 뜸.
    • 문자열/숫자는 문자열이 숫자로 자동변환됨. 이러한 것을 자동형변환이라고 함.
      console.log("9080"/2);를 하면 4540이 뜸.  console.log("8"/"2");라고 하면 4가 뜸
    • 연산은 무조건 좌측에서 우측으로 넘어가면서 순차적인 계산을 하는 것이 아님. 곱하기 나누기가 더 우선권을 가짐
      그래서 console.log(3 + 10 *3);은 39가아닌 33이 뜸
    • 자바처럼 num++ 이나 ++num도 가능.  num2 = num++;의 num2는 num이 증가되기 직전의 값이 저장됨.

     

     

    ■ 비교연산 / IF / CONDITIONAL

    • if 절 포맷은 자바와 유사함:
      if (<조건1>) {
          <결과1>;}
      else if (<조건2){
          <결과2>;}
      else {
          <결과3>;}
    • OR이나 AND라고 표기할 수 도있고,  ||이나 &&라고 표기할 수도 있음. not은 느낌표(!)를 붙이면 됨
    • OR같은 경우 i번째 조건이 참일 경우 i+1번째 조건식을 보지 않고, AND의 경우 i번째 조건이 false인경우 i+1 조건을 검사하지 않으니, 성능 최적화 문제를 고려하여 코드를 짤 것
    • "1" == 1은 true 반환임. 만약 타입까지 고려하여 비교하려면 "1" === 1이라고 외칠 것.
      ==동급 연산자, ===는 일치연산자라고 부름
    • switch 문법도 자바스크립트 사용 가능

     

     

     

    ■ 반복문 / FOR / WHILE / ITERATION

    • for loop 포맷 역시 자바와 유사함
      for (let i = 0 ; i < 10 ; i ++) {
           <반복할코드>};
    • while, do while, continue, break 다 자바스크립트 사용 가능한 문법