Data Type

wldls·2022년 10월 30일
0

javascript

목록 보기
2/33
post-thumbnail

자바스크립트라는 컴퓨터 프로그래밍 언어에 어떤 형태의 데이터가 있는지 살펴보고, 각각의 특징에 대해 살펴보자 공식문서 (MDN | JavaScript Data Type)

구분데이터 타입설명
원시 타입숫자(Number)타입숫자, 정수와 실수 모두 하나의 숫자만 존재
문자열(String)타입문자열
Boolean 타입true, false
undefined 타입var 키워드로 선언된 변수에 암묵적으로 할당 되는 값
null 타입값이 없다는 것을 의도적으로 명시
심벌(Symbol)타입ES6에서 추가된 7번째 타입
객체 타입객체, 함수, 배열 등

원시타입 : 들어갈 공간 안에 실제 데이터가 들어있다
참조타입 : 공간 안에 실제 데이터가 아닌 실제 데이터가 위치한 공간을 나타내는 메모리 포인터

숫자(Number)타입

산술 연산자를 사용하여 Number 타입에 대해 살펴보기

1 + 1 // 더하기
2 - 1 // 빼기
2 * 4 // 곱하기
6 / 2 // 나누기

(+) 는 좌우값을 더해서 하나의 값을 만든다는 점에서 이항 연산자라고한다
이항 연산자 중에서 산수를 하는 것이기 때문에 산술 연산자이다

String (문자열)

// 문자열 데이터 타입 변수 선언
const name = "kimcode";

// .length >> 문자열이 몇 글자로 되어 있는지 확인
name.length // 7

// .toUpperCase >> 문자열을 대문자로 출력
name.toUpperCase() // "KIMCODE"

// .indexOf >> 특정 텍스트의 포함 유무 및 위치 확인
name.indexOf('i') // 1
name.indexOf('e') // 6

문자열 + 숫자 조합

텍스트와 숫자를 구분하는 것은 ""(쌍따옴표) 이다

console.log("2 더하기 2는 " + 2 + 2);

String과 Number형을 더하면 항상 String 형으로 변환된다


✨ 4가 return 되도록 하시오

function txtNumber() {
  const text = "2 더하기 2는" + (2 + 2); // 2+2가 먼저 계산되도록 ( ) 로 묶어주었다
  return text;
}
console.log(txtNumber())

🤔

처음 예상하기로는 “2 더하기 2는 4 라고 나올거라 예상했다

하지만 2+2에 괄호로 묶여있지 않았고 컴퓨터는 왼쪽에서 순서대로 처리 된다고 하여

결과 값은 2 더하기 2는 22 가 나오게 된다

타입(typeof) 구하기

const age = prompt("How are you?");

console.log(typeof age); //string //구하고자 하는 변수 앞에 typeof 를 넣는다

typeof null , [ ]

typeof null → "object"
null 이라는 데이터 타입이 object 로 반환된다
null 은 빈 객체를 참조하고 있다
배열도 object로 반환된다

console.log(typeof []); //object

boolean

boolean은 true,false 인 데이터로 이루어진 데이터 타입
boolean 데이터 타입은 조건문과 반복문에서 유용하게 사용된다
자바스크립트에서 문자열은 ""(빈 문자열)을 제외하고 모두 true 값이다
따라서 조건은 true 가 되고, if문이 실행된다

아래의 코드는 if문이 실행되지 않는 false로 변환되는 예시이다

const number = 0;

if (number) {
  // 실행 안됨
}

함수

함수(function)란 하나의 특별한 목적의 작업을
수행하도록 설계된 독립적인 블록을 의미.

이러한 함수는 필요할 때마다 호출하여
해당 작업을 반복해서 수행할 수 있다

	function add (x,y) {
		return x + y;
	}
	add(2,5);

함수는 코드 블록으로 감싸서 하나의 실행 단위를 정의 한 것
함수 내부로 입력을 전달 받는 변수를 매개변수
입력을 인수, 출력을 반환값, 함수는 함수 정의를 통해 생성한다
인수를 매개변수를 통해 함수에 전달하면서 함수 호출을 한다
실행 결과는 반환값을 반환한다

배열

대괄호 두 개로 이루어져 있으며, 특정한 요소를 담는 데이터 타입
배열에 문자열을 넣을 때는 쉼표(,)로 구분해준다

const sandwich = ["kim code", 100 , true];

배열에는 수많은, 여러가지 데이터를 담을 수 있다
데이터 하나하나를 요소 라고 한다

객체

객체(object)는 자바스크립트 데이터 타입 중의 하나이다
객체의 데이터는 프로퍼티 라고 한다.
프로퍼티 안에는 key값과 value값을 쌍으로 이루어져 있고,
배열과는 다르게 순서가 중요하지 않다.

객체선언

const 객체명 = {
  property이름1: property1값,
  property이름2: property2값
}

객체는 {} 중괄호로 감싸져 있다

undefined

undefined 은 값이 정의되지 않은 데이터의 타입.
letconst 키워드를 사용해서 변수를 정의할 때 초기화하지 않았다면, 즉 변수를 선언만 하고 값을 할당하지 않았다면 변수에는 undefined 가 할당된다

let msg;

console.log(msg === undefined); //true (msg는 선언만 하고, 초기화하지 않았다)

null

null은 말그대로 아무것도 아닌 빈 객체를 가리키고 있어서 "object" 이다
어떤 값이 의도적으로 비어있음을 표현할 때

profile
다양한 변화와 도전하는 자세로

0개의 댓글