6. 자바스크립트 타입과 변수

Lia·2023년 4월 18일
0

타입

각 타입은 고유한 속성과 메서트를 가지고 있다.


속성과 메서드의 차이는?

  • 호출방법: .length 속성은 배열이나 문자열에 . 연산자를 통해 접근가능
    메서드는 () 를 사용하여 호출

  • 동작: 속성은 객체의 값을 나타냄, 메서드는 객체의 특정 동작을 수행하도록 지시하는 함수.

    예를 들자면 .length는 속성으로 사용되며, 배열의 요소 개수를 나타냄
    배열 객체의 .push() 메서드는 배열에 새로운 요소를 추가하는 동작을 수행하도록 호출하는 함수 (before 와 after가 존재한다고 생각하자!!!)

Number 타입

  • 정수와 음수 실수를 표현할 수 있다.

  • type0f 연산자로 해당값이 숫자인지 확인가능하다.
    예)typeof 100; // 'number'
    typeof -100; // 'number'

  • 산술연산자로 사칙연산이 가능하다.
    예)console.log(1 + 2); // 3
    console.log(9 % 2); // 1 (9를 2로 나눈 나머지 구하기)

  • Math 내장 객체가 있다. 대표적인 메서드는 아래와 같다.

    예)Math.floor(100.621) // 100 : 괄호 안의 숫자를 내림하여 반환.
    Math.ceil(100.621) // 101 : 괄호 안의 숫자를 올림하여 반환.
    Math.round(): 괄호 안의 숫자를 반올림하여 반환.
    Math.abs(): 괄호 안의 숫자의 절대값을 반환.
    Math.sqrt(): 괄호 안의 숫자의 루트값을 반환.
    Math.pow() : 괄호 안의 첫 번째 숫자를 밑, 두 번째 숫자를 지수인 숫자를 반환. (거듭제곱 연산)

String(문자열) 타입

  • 따옴표(’), 큰따옴표(”), 백틱(`) 으로 감싸면됨
    숫자와 문자를 조합가능
  • 로 문자열을 이어붙일 수 있음.
    예) "안녕하세요" + "!!"; // 안녕하세요!!
  • length 속성으로 문자열의 길이를 확인할 수 있음.문자열 값에 .length 를 붙이면 됨
    예) console.log('반가워'.length); // 3

  • 문자열 주요 메서드
    1. toLowerCase() : 문자열을 소문자로 변경
    2. toUpperCase() : 문자열을 대문자로 변경
    3. concat() : 문자열 연결 연산자 +처럼 문자열을 이어 붙일 수 있음
    4. slice() : 문자열의 일부를 자를 수 있음
    5. indexOf() : 문자열 내에 특정 문자나 문자가 몇 번째 위치하는지 확인. 찾는 문자가 2개 이상일 경우, 가장 앞에 있는 문자의 인덱스를 조회
      포함되어 있지 않으면 -1을 반환
    6. includes() : 문자열 내에 특정 문자나 문자가 포함되어 있는지 확인

Boolean 타입

  • 사실 관계를 구분하기 위한 타입

  • 불리언 타입의 값은 true 혹은 false

  • 비교연산자(comparison operator)

    1. ===, !== : 엄격한 동치 연산자

      두개의 피연산자를 비교하여 값과 타입이 같으면 true, 다르면 false를 반환
      예) console.log(1 === "1"); // false
      console.log(true === 1); // false
      123 !== (100 + 23); // true

    2. ==, != : 느슨한 동치 연산자

      “대체로” 타입이 달라도 값이 같으면 true, 다르면 false를 반환
      예) 12 == '12' // true 사용권장하지 않음

    3. > < , >= , <= : 대소 관계 비교 연산자
      두 피연산자의 값의 크기를 비교

  • 논리연산자(logical operator)

    1. || : 논리합(OR)
      두 값 중 하나만 true여도 true로 판단
      예) true || false; // true
      100 > 200 || 200 > 100; // true ("100은 200보다 크다" 혹은 "200은 100보다 크다" 중 하나는 true)
      false || false // false (두 값이 모두 false면 false로 판단)
    2. && : 논리곱(AND)
      두 값이 모두 true면 true로 판단합니다.
      예) true && true // true
      두 값 중 하나만 false여도 false로 판단합니다.
      예) true && false // false
    3. ! : 부정(NOT)
      사실 관계를 반대로 표현
      예) !true // false
      !(100 > 200) // true

변수

  • 변수의 선언과 할당
    변수란 ? 메모리 공간을 확보한다!
    선언이란? 공간에 이름부여!
    let num; // 변수선언
    할당이란? 이름에 값을 넣어줌!
    num = 5; // 값 할당 (num은 이제 5가 된것임)
    동시에 변수선언 및 값할당이 가능함
    예) let name = 'kims';
    정리하자면 let은 변수의 키워드 name은 변수의 이름 kims는 변수의 이름에 할당된 값!!!

  • 아무것도 할당하지 않은 변수 (undefined)
    아무것도 할당되지 않은 변수는 undefined가 자동으로 할당 됨
    예) let variable;
    console.log(variable) // undefined

  • 값의 재할당
    let키워드로 선언한 변수에 새로운 값을 할당할 수 있음
    예) let name = 'kims';
    name = 'kimss';
    console(name) // 'kimss'

  • 재할당이 불가능한 변수(상수)
    const 키워드는 재할당 금지 됨
    예) let name = 'kims';
    name = 'kimss'; // Uncaught TypeError: Assignment to constant variable

  • 템플릿 리터럴(template literal) 단어 사이 사이 공백필요 시 유용함.
    백틱을 사용하는 방법을 템플릿 리터럴이라고 함.
    문자열 내부에 변수 삽입할 수 있는 기능이 있음
    예) let greeting = 'Hi';
    let age = '28';
    let laughter = 'haha';
    console.log(${greeting} ${age} ${laughter}); // 'Hi 28 haha'
profile
https://lia-portfolio.vercel.app/

0개의 댓글