💻 프로그래밍의 기본: 원시 자료형과 참조 자료형 📘
🎯 글 작성의 목표
이 글에서는 프로그래밍에서 중요한 개념인 원시 자료형(primitive types)과 참조 자료형(reference types)에 대해 다룹니다.
특히, JavaScript를 주로 사용하면서 예제를 제시할 예정이니, 이해에 도움이 되시길 바랍니다.
📚 원시 자료형이란? 💡
원시 자료형은 프로그래밍 언어에서 가장 기본적인 자료형을 가리킵니다. 이는 보통 변경 불가능하며(immutable),
원시 값이 변수에 할당되면, 변수에는 실제 값이 직접 저장됩니다. JavaScript에서는 7가지 원시 자료형이 있습니다:
- undefined
- null
- boolean
- number
- string
- symbol
- bigint
📝 원시 자료형 코드 예제 🎲
/* 아래는 원시 자료형의 예제입니다 */
// undefined
let a;
console.log(a); // 결과: undefined
// null
let b = null;
console.log(b); // 결과: null
// boolean
let c = true;
console.log(c); // 결과: true
// number
let d = 10;
console.log(d); // 결과: 10
// string
let e = "Hello, world!";
console.log(e); // 결과: "Hello, world!"
// symbol
let f = Symbol("id");
console.log(f); // 결과: Symbol(id)
// bigint
let g = 1234567890123456789012345678901234567890n;
console.log(g); // 결과: 1234567890123456789012345678901234567890n
🔖 참조 자료형이란? 🗂
참조 자료형은 객체(object) 형태의 자료를 가리키는 용어입니다.
이는 원시 자료형과 달리 변경 가능(mutable)하며, 참조 값이 변수에 할당되면, 변수에는 값이 아닌 참조(주소)가 저장됩니다.
JavaScript에서는 Object, Array, Function 등이 이에 해당합니다.
📝 참조 자료형 코드 예제 🗄
/* 아래는 참조 자료형의 예제입니다 */
// Object
let obj = {name: "John", age: 30};
console.log(obj); // 결과: {name: "John", age: 30}
//
Array
let arr = [1, 2, 3, 4, 5];
console.log(arr); // 결과: [1, 2, 3, 4, 5]
// Function
let func = function() {
return "Hello, function!";
}
console.log(func()); // 결과: "Hello, function!"
💡 참조 자료형의 동적 특성 🔄
참조 자료형은 동적으로 변경될 수 있는 특징이 있습니다.
즉, 한 번 생성된 객체나 배열, 함수 등을 나중에 변경할 수 있다는 점이 특징입니다.
🚀 참조 자료형 동적 예제 🌠
/* 아래는 참조 자료형의 동적 변경 예제입니다 */
// Object
let obj = {name: "John", age: 30};
obj.age = 31; // age 속성 변경
console.log(obj); // 결과: {name: "John", age: 31}
// Array
let arr = [1, 2, 3, 4, 5];
arr.push(6); // 배열에 요소 추가
console.log(arr); // 결과: [1, 2, 3, 4, 5, 6]
// Function
let func = function() {
return "Hello, function!";
}
func = function() { // 함수 변경
return "Hello, changed function!";
}
console.log(func()); // 결과: "Hello, changed function!"
🔍 참조 자료형 값 복사에 대하여 📋
원시 자료형의 경우, 변수에 직접 값이 저장되기 때문에 값을 복사할 때는 해당 값을 직접 복사합니다.
그러나 참조 자료형의 경우, 변수에는 값이 아닌 참조(주소)가 저장되므로 값을 복사할 때는 해당 참조를 복사합니다.
이는 참조 자료형의 복사와 원시 자료형의 복사가 서로 다르게 동작하는 이유입니다.
🚀 참조 자료형 값 복사 예제 🌠
/* 아래는 참조 자료형 값 복사의 예제입니다 */
// 원시 자료형 복사
let a = 10;
let b = a;
a = 20;
console.log(a); // 결과: 20
console.log(b); // 결과: 10
// 참조 자료형 복사
let obj1 = {name: "John", age: 30};
let obj2 = obj1;
obj1.age = 31;
console.log(obj1); // 결과: {name: "John", age: 31}
console.log(obj2); // 결과: {name: "John", age: 31}
</
code>
📌 마무리하며... 🏁
이번 글에서는 원시 자료형과 참조 자료형, 그리고 이들의 특징과 동작 방식에 대해 알아보았습니다.
프로그래밍을 하는 데 있어서 이러한 자료형의 이해는 매우 중요하므로, 여러 번 읽어보고 예제를 직접 실행해보면서 이해를 깊게 해 보시기 바랍니다.
이상으로 "프로그래밍의 기본: 원시 자료형과 참조 자료형"에 대한 글을 마치겠습니다. 만약 궁금한 점이나 오류가 있다면 아래 댓글로 남겨주시기 바랍니다. 🙏
'Front-end > JavaScript' 카테고리의 다른 글
| 자바스크립트 DOM 조작: 이해하기부터 실전 활용까지 (0) | 2023.06.09 |
|---|---|
| 스코프 (Scope) 이해하기 (0) | 2023.06.06 |
| JSON을 JavaScript 배열의 형태로 변환하기: 데이터 형식의 변환 (0) | 2023.06.04 |
| 배열과 객체: 다양한 데이터 구조의 활용 (0) | 2023.06.03 |
| JavaScript 배열: 데이터 구조를 다루는 즐거움 (0) | 2023.06.02 |