반응형
const를 사용하면 불변변수로 인해
값을 변경할수 없지만
push, splice, pop 함수를 사용하면 변경이 가능하다
이를 무결성 제약 조건에 위배되었다고 한다.
그래서 무결성을 유지하면서 무결성 변수를 수정하는 방법은
값을 추가시 : push 함수 대신 concat() 함수를
삭제시: pop(), shift()함수 대신 slice(), concat() 함수에 전개 연산자를
조합하여 사용하면 된다.
const arr3 = [];
const arr4 = arr3.concat(1); // arr4 = [1]
const arr5 = [...arr4, 2, 3]; // arr5 = [1, 2, 3]
const arr6 = arr5.slice(0, 1); // arr6 = [1], arr5 = [1, 2, 3]
const [first, ...arr7] = arr5; // arr7 = [2, 3], first = 1
const obj3 = { name: '내이름', age: 20 };
const obj4 = { ...obj3, name: '새이름' }; // obj4 = { name: '새이름', age: 20}
const { name, ...obj5 } = obj4; // obj5 = { age: 20 }
const arr = [1, 2, 3];
// 가변 변수를 사용한 예
for (let i = 0; i < arr.length; i++) {
console.log(arr[i]);
}
// iterator 방식의 for-in 루프와 함께 불변 변수를 사용한 예
for (const item in arr) {
console.log(item);
}
// forEach 함수를 활용한 예
arr.forEach((item, index) => {
console.log(item);
console.log(index);
});
728x90
'모바일 APP > React-Native' 카테고리의 다른 글
ES6 구조 분해와 구조 할당 (0) | 2021.12.09 |
---|---|
ES6 화살표 함수 (0) | 2021.12.09 |
전개 연산자 (0) | 2021.12.07 |
고차함수 (Currying) (0) | 2021.12.04 |
all sub-directories not excluded by your .gitignore. Will not monitor dotfiles. (0) | 2021.10.05 |