여름의 서재

[JavaScript] 배열 & 객체 본문

Skill/JavaScript

[JavaScript] 배열 & 객체

엉아_ 2021. 11. 7. 23:28
728x90

💡 배열

: 키와 속성들을 담고 있는 참조 타입의 객체. 배열의 길이는 array.length로 접근 가능.

ex) [1, 2, 3, 4, 5]

 

📌 배열 관련 메서드

- array.reverse()

: 워본 배열의 요소들의 순서를 반대로 정렬

 

- array.push(요소)

: 배열의 가장 뒤에 요소 추가

 

- arrays.pop()

: 배열의 마지막 요소 제거

 

- arrays.unshift(요소)

: 배열의 가장 앞에 요소 추가

 

- arrays.shift()

: 배열의 첫번째 요소 제거

 

- array.includes(value)

: 배열에 특정 값이 존재하는지 판별 후 참 또는 거짓 반환

 

- array.indexOf(value)

: 배열에 특정 값이 존재하는지 확인 후 가장 첫번째로 찾은 요소의 인덱스 반환, 없다면 -1 반환.

 

- array.join([separater])

: 배열의 모든 요소를 연결하여 반환. separater는 연결 중간에 들어갈 구분자.

 

📌 Array Helper Methods

: 배열을 순회하며 특정 로직을 수행하는 메서드

: 매서드 호출시 인자로 callback 함수를 받는 것이 특징

 

- array.forEach(callback(element[, index[, array]]))

: 배열의 각 요소에 대해 콜백 함수를 한번씩 실행

: 반환값이 없는 메서드

const fruits = ['딸기', '사과', '메론']

fruits.forEach((fruit, index) => {
  console.log(fruit, index)
})
// 딸기 0
// 사과 1
// 메론 2

 

- array.map(callback(element[, index[, array]]))

: 콜백 함수의 반환 값을 요소로 하는 새로운 배열 반환

const numbers = [1, 2, 3]

const doubleNums = numbers.map((num) => {
  return num * 2
})

console.log(doubleNums)
// [2, 4, 6]

 

- array.filter(callback(element[, index[, array]]))

: 콜백 함수의 반환 값이 참인 요소들만 모아서 새로운 배열을 반환

const numbers = [1, 2, 3]

const oddNums = numbers.filter((num) => {
  return num % 2
  
console.log(oddNums)
// [1, 3]

 

- array.reduce(acc, element, [index[, array]])[, initialValue])

: 콜백 함수의 반환 값들을 하나의 값(acc)에 누적 후 반환

const numbers = [1, 2, 3]

const result = numbers.reduce((acc, num) => {
  return acc + num
}, 0)

console.log(result)
// 6

 

- array.find(callback(element[, index[, array]]))

: 콜백 함수의 반환 값이 참이면 해당 요소를 반환

: 찾는 값이 배열에 없으면 undefined 반환

const peoples = [
  { name: 'eric', age: 20 },
  { name: 'yeongha', age: 25 },
  { name: 'jeongwoo', age: 30 },
]

const result = peoples.find((peoples) => {
  return peoples.name == 'yeongha'
})

console.log(result)
// {name: 'yeongha', age: 25}

 

- array.some(callback(element[, index[, array]]))

: 배열의 요소 중 하나라도 주어진 판별 함수를 통과하면 참을 반환

: 모든 요소가 통과하지 못하면 거짓 반환

const numbers = [1, 3, 5]

const hasEvenNum = numbers.some((num) => {
  return num % 2 === 0
})

console.log(hasEvenNum)
// false

const hasOddNum = numbers.some((num) => {
  return num % 2
})

console.log(hasOddNum)
// true

 

- array.every(callback(element[, index[, array]]))

: 배열의 모든 요소가 주어진 판별 함수를 통과하면 참을 반환

: 요소 중 하나라도 통과하지 못하면 거짓 반환

const numbers1 = [2, 4, 6, 8]

const hasEvenNum = numbers1.some((num) => {
  return num % 2 === 0
})

console.log(hasEvenNum)
// true

const numbers2 = [1, 2, 3, 5]

const hasOddNum = numbers.some((num) => {
  return num % 2
})

console.log(hasOddNum)
// false

 

💡 객체

: 객체는 속성의 집합이며, 중괄호 내부에 key와 value의 쌍으로 표현

: key는 문자열 타입만 가능하고, value는 모든 타입 가능

 

📌 JSON

: key-value쌍의 형태로 데이터를 표기하는 언어 독립적 표준 포맷

: 자바스크립트의 객체와 유사하게 생겼으나 실제로는 문자열 타입

 

  • JSON.parse(json)
    : JSON -> 자바스크립트 객체
  • JSON.stringify(자바스크립트 객체)
    : 자바스크립트 객체 -> JSON

'Skill > JavaScript' 카테고리의 다른 글

[JavaScript] AJAX & Promise & Axios  (0) 2021.11.08
[JavaScript] 함수  (0) 2021.11.07
[JavaScript] 조건문 & 반복문  (0) 2021.11.07
[JavaScript] 변수 & 식별자 & 데이터타입  (0) 2021.11.07
[JavaScript] DOM & Event  (0) 2021.11.07
Comments