JavaScript

JavaScript 배열

NEWDODORIPYO 2022. 4. 27. 23:34

JavaScript 프로토타입 <배열>

원형 메모리를 공유하는 모양

  • 메모리를 아껴서 쓸 수 있다는 장점이 있다
  • B가 A를 바꿔버리면 다른 B가 보는 A의 데이터도 변해버린다
  • 객체 리터럴은 프로토 타입이 없다

 

Array.prototype.push()

  • 배열 자체를 반환을 못해준다 카운트 값만 반환

push

const arr = [1,2,3]

console.log(arr.push(4))
console.log(arr.push([5,6]))

console.log("--------------")
console.log(arr)

결과

Array.prototype.concat()

  • 기존 배열을 변경하지 않습니다.
  • 추가된 새로운 배열을 반환합니다.

concat 은 새로 만드는 방식이라 별도의 변수를 잡아줘야 한다 <깊은 복사>

console.log("cart....")


const arr = [1,2,3]

const result = arr.concat(4)

console.log(arr)
console.log(result)

결과

Spread Opertor (스프레드 연산자)

const arr = [1,2,3]

const arr2=[...arr,4,5,6]

console.log(arr2)

결과

Splice

메서드는 배열의 기존 요소를 삭제 또는 교체하거나 새 요소를 추가하여 배열의 내용을 변경합니다

const arr = [1,2,3,4,5]

const result = arr.splice(1,1)

console.log(result)

결과

arr을 확인해 보았을 때

const arr = [1,2,3,4,5]

const result = arr.splice(1,1)

console.log(arr)

결과

인덱스 번호 찾아서 splice 해주기

const arr =[

{num:1, name:'aaa'},
{num:2, name:'bbb'},
{num:3, name:'ccc'},

]

const idx = arr.findIndex(ele => ele.num === 2)

if(idx >= 0){

    arr.splice(idx,1)
}

console.log(arr)

결과

'JavaScript' 카테고리의 다른 글

⭐JavaScript Closure⭐  (0) 2022.05.07
⭐⭐호이스팅⭐⭐  (0) 2022.04.27
JavaScript 이벤트  (0) 2022.04.25
JavaScript preventDefault() , target  (0) 2022.04.24
⭐ JavaScript 버블링 , 캡쳐링  (0) 2022.04.24