728x90
배열에 원소를 추가할 때 .push를 자주 쓰곤 했는데
.concat이라는 기능을 알게 되었다.
.concat도 똑같이 배열에 원소를 추가하는데, .push 와 뭐가 다를까?
바로 .push는 배열의 원본에 원소를 추가하는것이라면,
.concat은 배열의 원본은 건드리지 않고 조작하는 것이다.
코드로 예를 들자면,
var arr = [1,2];
arr.push(3);
// 이라면, arr를 출력했을 때 [1,2,3]이 출력된다.
var arr2 = [1,2];
var result = arr2.concat(3);
//이라면, result는 [1,2,3]이 되지만 arr2를 출력해보면 [1,2]가 출력된다.
state의 값을 바꿔야 할 때 .push를 쓰지 말고, .concat처럼 새로운 데이터를 추가하는걸 써야한다.
.push로 해도 기능 자체에는 문제가 없지만 나중에 성능을 개선할 때 굉장히 까다롭다고 하니 알아두면 좋을 듯 하다~!
지금껏 몰랐네,,
728x90
'일기장 > 개발일기' 카테고리의 다른 글
Sping boot Maven project jar 생성 및 실행 (0) | 2024.07.04 |
---|---|
[개발일기] 배열, 객체 복제하기 (0) | 2023.02.02 |
[개발일기] e.preventDefault (4) | 2022.12.28 |
[개발환경] mac sts에 톰캣 연결하기 (3) | 2022.11.28 |
[개발환경] mac에 tomcat 설치하기 (5) | 2022.11.28 |