[자바스크립트] 변수, 타입, 값

River Moon·2023년 6월 29일
0
post-thumbnail

변수(Variable)

변수는 데이터를 저장하는 공간이다. 자바스크립트에서는 var, let, const 세 가지 키워드를 이용하여 변수를 선언할 수 있다.

예를 들어, 다음 코드는 var를 사용하여 name이라는 변수를 선언하고, "John"이라는 값을 할당한다.

var name = "John";

그리고 let과 const를 사용하는 예는 다음과 같다.

let age = 30;
const country = "Korea";

letconstvar보다 범위 규칙이 엄격하여 일반적으로 더 안전하게 코드를 작성할 수 있게 도와준다. 특히 const는 한번 선언되면 그 값을 변경할 수 없다.

변수는 다양한 값을 담을 수 있는 박스와 같은 컨테이너

값, 타입

자바스크립트에서 변수의 "값(value)"은 변수에 할당되는 데이터를 의미한다. 이 값은 여러 가지 타입이 될 수 있으며, 이에 따라 변수의 동작 방식도 달라질 수 있다.

타입이란 무엇인가?

자바스크립트에서 데이터는 다양한 타입을 가질 수 있다. 주요 타입으로는 Number, String, Boolean, Object, Null, Undefined 등이 있다.

예를 들어, Number 타입의 데이터는 다음과 같다.

let num = 10;

String 타입의 데이터는 문자열을 나타내며, 따옴표 안에 텍스트를 넣어 표현한다.

let str = "Hello, JavaScript!";

Boolean 타입은 true와 false 두 가지 값만 가진다.

let isTrue = true;
let isFalse = false;

Object 타입은 여러 값과 속성을 한 번에 저장할 수 있는 복합 데이터 타입이다.

let obj = {name: "John", age: 30, country: "Korea"};

마지막으로 Null과 Undefined는 특수한 타입으로, 값이 없음을 나타낸다.

let emptyVar = null;
let undVar;

이렇게 자바스크립트는 다양한 타입의 변수를 통해 다양한 데이터를 표현할 수 있다.

원시 타입의 값

자바스크립트의 원시 타입(primitive type)에는 Number, String, Boolean, Undefined, Null, Symbol, 그리고 BigInt가 있다. 원시 타입의 값은 변경 불가능(immutable)하다. 즉, 한 번 생성된 값을 수정할 수 없다.

//다음은 원시 타입의 값 예시이다:
let num = 10;              // Number
let str = 'Hello World';   // String
let flag = true;           // Boolean
let notDefined;            // Undefined
let empty = null;          // Null
let sym = Symbol();        // Symbol
let bigNum = 123n;         // BigInt

객체 타입의 값

Object는 여러 가지 값과 속성을 한 번에 가질 수 있는 복합적인 데이터 타입이다. 객체의 값은 변경 가능(mutable)하다. 즉, 객체의 속성을 추가, 삭제, 수정할 수 있다.

다음은 Object 타입의 값 예시이다:

let obj = {                // Object
  name: 'John', 
  age: 30, 
  country: 'Korea'
};

ArrayFunction 또한 Object 타입의 특별한 형태로 볼 수 있다.

let arr = [1, 2, 3, 4, 5]; // Array

let func = function() {    // Function
  console.log('Hello, JavaScript!');
};

이런 식으로, 자바스크립트에서는 변수에 다양한 타입의 값을 할당할 수 있다. 이 값은 변수가 어떤 데이터를 참조하고 있는지, 즉 변수의 현재 상태를 나타낸다. 이를 통해 프로그램은 다양한 상황에 대응할 수 있게 된다.

profile
FE 리버

0개의 댓글