[TIL 08] 비교연산자와 데이터타입

_dodo_hee·2021년 2월 24일
0

JAVASCRIPT

목록 보기
2/17
post-thumbnail

자바스크립트 기초 다시 훑으니까 뭔가 확실하게 아는느낌이다.
하지만 누구한테 알아듣기 쉽게 설명하지 못한다면 그건 이해하지 못한거란 지인의 말 땜에
공부할때 더 열심히 이해하고 넘어가려고 한다ㅋㅋㅋ

비교연산자

비교연산자란 두 개의 연산자를 비교한 결과를 논리 값(true/false)으로 반환한다.

비교연산자는 주로 제어 구조에서 조건식을 만들때 사용한다.
비교연산자에는 ==(동일연산자)===(일치연산자)가 있다.
변수가 같은지를 판정하는 연산자지만, 의미가 다르다.

동일연산자

동일연산자 --는 좌변과 우변의 연산자가 같은지를 비교하며, 같으면 true 다르면 false를 나타낸다.

코드 예시✍️

console.log(1 == 1) //true
console.log(1 == "1") //true

동일연산자 ==는 좌변 우변이 문자인지 숫자인지 상관없이
동일연산자가 강제로 문자열을 숫자열로 인식하고 출력 값 또한 동일하기 때문에 true라고 표시된다.

일치연산자

일치연산자 === 는 좌변 우변이 정확하게 값이 같을 때 true! 틀릴 땐 false로 나타낸다.

코드 예시✍️

console.log(1 === 1) //true
console.log(1 === "1") //false

일치연산자 ===타입이 다른 연산자인 경우에 강제로 바꾸지 않고 다른 모습 그대로 평가를 하여 비교한다.
위에 코드는 데이터 타입이 다르기 때문에 false 로 나타난다.

이런식으로 동일연산자와 일치연산자의 차이가 있어서
실질적으로 코드를 작성할땐 일치연산자 사용을 더 많이 한다고 한다.

데이터 타입

데이터 타입은 프로그래밍 언어의 기본적인 구성 요소이고,
숫자나 문자열처럼 변수에 저장하는 데이터 종류를 뜻한다.

자바스크립트의 기본 데이터 타입의 분류를 살펴보자.

  • 기본 타입

    • 숫자
    • 문자열
    • 논리값
    • 특수한 값(undefined / null)

    🖐 앞으로 나올 말 중에 리터럴 이란, 프로그램에 작성할 수 있는 상수 값이다.

숫자

자바스크립트는 숫자를 모두 64비트 부동소수점으로 표현한다.

데이터 타입의 책으로 볼때와 검색할땐 엄청나게 어려운 말들이 많지만,
내가 실제로 코드를 작성할땐 자세한 것들은 안쓸 것 같아서 이해할땐
그냥 일반적인 정수,소수,숫자,를 사용한다고 넘어가면 된다.

👉 자세한 숫자리터럴 보러가기 > 모던 자바스크립트의 데이터타입

문자열

자바스크립트 문자열은 길이가 16비트인 유니코드 문자를 나열한 것으로 전 세계에서 사용하는 문자를 대부분 표현할 수 있다.

문자열 리터럴은 작은따옴표(')나, 큰따옴표(")를 문자열의 앞뒤에 붙여서 표현한다.
빈 문자열 표기법 "" : 아무것도 포함하지 않는 문자열
문자열안에 작은따옴표가 들어있을땐 큰따옴표로 묶어서 표현해줄 수 있다.

논리값

논리값은 조건식이 참인지 거짓인지 표현하기 위해 사용하는 값.

true는 참, false는 거짓

특수한 값

값이 없음을 표현하기 위해 특수한 값에는 null과 undefined가 있다.

undefined정의되지 않은 상태를 뜻한다. 쉬운말로 값을 받지 못했을때 나오는 결과라고 이해하자.

  • undefined가 나오는 경우

    • 값을 아직 할당하지 않은 변수의 값
    • 없는 객체의 프로퍼티나, 배열의 요소를 읽으려고 시도했을 때의 값
    • 아무것도 반환하지 않는 함수가 반환하는 값
    • 함수를 호출했을 때 전달받지 못한 인수의 값

    null은 아무것도 없음을 나타내는 리터럴이다.
    프로그램안에서 검색했지만 찾지 못했을때 아무것도 없음을 전달하기 위한 값으로 사용된다.


    와, 불과 1월의 나만 봐도 이거 이해 하나도 못했는데..신기하다....

profile
무럭무럭 자라나는 도도 개발성장일기

0개의 댓글