Front/JavaScript

[JavaScript] Array 객체

ddo04 2024. 8. 6. 02:11
728x90

πŸ’ Array 객체

  • λ³€μˆ˜ ν•˜λ‚˜μ— μ—¬λŸ¬ 개의 값을 넣을 수 있음
  • ν•œκΊΌλ²ˆμ— 자료λ₯Ό λͺ¨μ•„μ„œ μ²˜λ¦¬ν•  수 μžˆλ‹€λŠ” μž₯점 λ•Œλ¬Έμ— μžλ°”μŠ€ν¬λ¦½νŠΈμ—μ„œλŠ” 배열을 μ‚¬μš©ν•œ ν”„λ‘œκ·Έλž˜λ°μ΄ 많음
  • 배열에 ν™œμš©ν•˜λŠ” λ§Žμ€ 속성과 ν•¨μˆ˜κ°€ 미리 μ •μ˜λ˜μ–΄ μžˆλŠ” 객체  

πŸ’ Array 객체둜 λ°°μ—΄ λ§Œλ“€κΈ°

  • μ΄ˆκΉƒκ°’μ΄ 없을 λ•Œ
var myArray = new Array();
  • μ΄ˆκΉƒκ°’μ΄ μžˆμ„ λ•Œ 
var numbers = ["one","two","three","four"]; // λ¦¬ν„°λŸ΄μ„ μ‚¬μš©ν•œ λ°°μ—΄
var numbers = new Array("one", "two", "three", "four"); // Array 객체λ₯Ό μ‚¬μš©ν•œ λ°°μ—΄

πŸ’ 배열을 λ§Œλ“€μ–΄λ³΄κ³  배열을 μ‚¬μš©ν•˜μ—¬ λ©”μ„œλ“œ 적용 방법 μ‚΄νŽ΄λ³΄κΈ°

  • concat은 2개 μ΄μƒμ˜ 배열을 μ—°κ²°ν•΄μ„œ μƒˆλ‘œμš΄ 배열을 λ§Œλ“¬
  • μƒˆλ‘œμš΄ 배열은 λ³„λ„μ˜ 배열이라 기쑴의 λ°°μ—΄ 값듀을 λ³€κ²½ν•˜μ§€ μ•ŠμŒ
  • κΈ°μ‘΄ 배열에 영ν–₯을 μ£Όμ§€ μ•Šκ³  μƒˆλ‘œμš΄ 배열을 λ§Œλ“€μ–΄λ‚΄λŠ” λ©”μ„œλ“œ

πŸ’ κΈ°μ‘΄ 배열에 μƒˆλ‘œμš΄ 값을 μΆ”κ°€ν•˜λŠ” 방법

  • λ°°μ—΄μ—μ„œ κ°€μž₯ κ°„λ‹¨ν•œ 것은 맨 끝에 μΆ”κ°€ν•˜λŠ” 것이 κ°€μž₯ 간단 => 기쑴의 인덱슀λ₯Ό κ·ΈλŒ€λ‘œ μœ μ§€ν•˜λ©΄μ„œ 기법은 μœ μ§€
  • pushλ₯Ό μ‹€ν–‰ν•˜λ©΄ κ·Έ 값이 μΆ”κ°€λœ 후에 μš”μ†Œμ˜ κ°œμˆ˜κ°€ λͺ‡ κ°œκ°€ λ˜μ—ˆλŠ” μ§€ λ³΄μ—¬μ€Œ
  • push ν•¨μˆ˜λ₯Ό μ‚¬μš©ν•˜λ©΄ μ›λž˜ 배열이 μƒˆλ‘œμš΄ λ°°μ—΄λ‘œ λ³€κ²½
  • μ›λž˜ 배열에 영ν–₯을 미치게 됨
  • pushλŠ” κΈ°μ‘΄ 배열에 변경을 μ£Όλ©΄μ„œ μƒˆλ‘œμš΄ 값을 μΆ”κ°€ν•˜λŠ” 함
  • unshiftλŠ” 값을 맨 μ•žμ— μΆ”κ°€ν•˜λŠ” ν•¨μˆ˜ 

πŸ’λ°°μ—΄μ—μ„œ νŠΉμ •ν•œ 값을 μΆ”μΆœν•΄λ‚΄λŠ” 방법

  • pop λ˜λŠ” shift ν•¨μˆ˜ μ‚¬μš©
  • 맨 끝에 μžˆλŠ” 것을 μΆ”μΆœν•˜λ €λ©΄ pop ν•¨μˆ˜ μ‚¬μš©
  • pop ν•¨μˆ˜λ₯Ό μ‹€ν–‰ν•˜λ©΄ 맨 끝에 μžˆλŠ” μš”μ†Œλ₯Ό μΆ”μΆœ
  • μ•žμ— μžˆλŠ” 것을 μΆ”μΆœν•˜λ €λ©΄ shift ν•¨μˆ˜ μ‚¬μš©
  • shift λ©”μ„œλ“œλ₯Ό μ‹€ν–‰ν•˜λ©΄ 남아 μžˆλŠ” κ°’ μ€‘μ—μ„œ μ•žμ— μžˆλŠ” 값이 μΆ”μΆœλ¨
  • μΆ”μΆœλœ 값을 보여주고 λ°˜ν™˜

  • λ°°μ—΄μ˜ μ€‘κ°„μ΄λ‚˜ νŠΉμ •ν•œ μœ„μΉ˜μ—μ„œ μΆ”μΆœμšΈ ν•΄μ•Όν•˜λŠ” κ²½μš°μ—λŠ” slice, splice μ‚¬μš© κ°€λŠ₯
  • κΈ°μ‘΄ 배열을 λ³€κ²½ν•˜λŠ”μ§€ μ•ˆν•˜λŠ”μ§€ 차이가 있음
  • sliceλŠ” κΈ°μ‘΄ λ°°μ—΄μ—μ„œ νŠΉμ • κ°’λ§Œ ν˜ΈμΆœν•˜μ—¬ μƒˆλ‘œμš΄ 배열을 λ§Œλ“€κ³  싢을 λ•Œ μ‚¬μš©ν•˜λ©΄ 됨
  • spliceλŠ” μΆ”μΆœν•œ 개수λ₯Ό μ§€μ •
  • κ°€μž₯ 큰 차이점은 μΆ”μΆœμ„ ν•˜κ³  λ‚˜λ©΄ μ›λž˜μ˜ 배열이 λ³€κ²½
  • spliceλŠ” λ°°μ—΄ μ–Έμ—μ„œ νŠΉμ • μš”μ†Œλ‘œ μ‚­μ œν•˜λŠ” μš©λ„λ‘œ μ‚¬μš©ν•  수 있음
  • spliceλŠ” μ•ˆμ— λ“€μ–΄κ°€λŠ” λ§€κ°œλ³€μˆ˜λ₯Ό 3κ°œκΉŒμ§€ μž‘μ„±ν•  수 있음