月亮

[JavaScript] 객체(Object)와 배열(Array) 본문

javascript

[JavaScript] 객체(Object)와 배열(Array)

듀네 2023. 4. 21. 10:17

객체

객체(Object)는 이름-값 쌍으로 구성된 데이터를 저장합니다.
즉, 객체는 프로퍼티(Property)의 집합이라고 할 수 있습니다.
객체는 중괄호({})로 표현하며, 프로퍼티는 "이름: 값" 형태로 정의
const person = {
  name: "John",
  age: 30,
  gender: "male"
};

 

배열

배열(Array)은 값의 집합을 저장합니다. 즉, 배열은 값(Value)의 집합이라고 할 수 있습니다.
배열은 대괄호([])로 표현하며, 값은 쉼표로 구분하여 정의
배열은 인덱스(Index)를 사용하여 값을 가져올 수 있으며, 배열의 길이를 알 수 있는 length 프로퍼티를 제공합니다.
객체와는 달리, 배열은 값의 순서가 유지되며, 값을 추가하거나 삭제할 수 있습니다.
const fruits = ["apple", "banana", "orange"];

//생성
let arr = []; // 빈 배열 생성
let arr = [1, 2, 3]; // 인덱스 0, 1, 2에 각각 1, 2, 3이 들어있는 배열 생성
let arr = new Array(); // 빈 배열 생성
let arr = new Array(1, 2, 3); // 인덱스 0, 1, 2에 각각 1, 2, 3이 들어있는 배열 생성
let arr = new Array(3); // 인덱스 0, 1, 2에 undefined가 들어있는 배열 생성
//배열객체는 length 속성을 가지며, push, pop, shift, unshift, splice 등의 메서드를 제공하여 
//배열의 추가, 삭제, 수정 등의 작업을 수행할 수 있습니다.

 

배열객체 Object Array

객체(object)를 요소로 가지는 배열
각 요소는 key-value 쌍의 형태로 구성
let objArr = [
  { name: "Alice", age: 25 },
  { name: "Bob", age: 30 },
  { name: "Charlie", age: 35 }
]; // 객체 배열

배열을 포함하는 객체

const obj = {
  name: "John",
  age: 30,
  items: ["item1", "item2", "item3"]
};

 

+ 주의점

객체의 속성(property)은 값을 참조하거나 수정할 수 있습니다. 예를 들어, 아래와 같이 객체를 생성하고 속성에 접근하여 값을 수정할 수 있습니다.

const person = { name: 'Alice', age: 30 };
person.name = 'Bob'; // 속성값 수정
console.log(person); // { name: 'Bob', age: 30 }


하지만 객체 자체에는 값을 할당할 수 없습니다. 즉, 객체를 상수(const)로 선언하면 객체의 내용을 수정할 수 없습니다.

const person = { name: 'Alice', age: 30 };
person = { name: 'Bob', age: 40 }; // 오류 발생!

 

반응형
Comments