[SEB FE 44] 구조 분해 할당

Heechang Jeong·2023년 3월 6일
0

CODE STATES

목록 보기
15/40
post-thumbnail

✍ 복습 자료


  • 객체의 단축(shorthand) 문법

  • npm install하는 과정에서 오류

4 vulnerabilities (1 moderate, 3 high)
4개의 취약점이 발견된다. 주의가 필요하지 않은 문제를 해결하려면?
npm audit fix --force를 실행시키라고 한다.

heechang@DESKTOP-AHO3UK9:~/fe-sprint-javascript-koans-main$ npm audit fix --force
npm WARN using --force Recommended protections disabled.
npm WARN audit Updating mocha to 10.2.0, which is a SemVer major change.
npm WARN audit Updating @mochajs/json-file-reporter to 0.1.1, which is a SemVer major change.

added 1 package, removed 11 packages, changed 11 packages, and audited 188 packages in 2s

29 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

더 이상 취약점이 발견되지 않는 것을 볼 수 있다.
그 이후에 npm run ~ 실행시키면 잘 돌아간다!



📌 오늘의 알파


  • 원시값과 참조값

    배열, 객체는 참조값이다.

    obj.masterminde는 문자열이다. 즉, 원시값이므로 copiedObj.mastermind를 'James Wood'로 변경하더라도 obj.masterminde 값은 바뀌지 않는다.

  • 복사

    같은 주소를 가지지 않지만, 똑같은 값을 가진 객체를 만들어 내는 것

let arr =[1,2,3,[4]];
let obj = { a:2, b:5 };
let copiedArr = arr;

let slice = arr.slice();
let assign = Object.assign({}, obj);

console.log(slice); // [1,2,3,[4]]
console.log(slice === arr); // false
console.log(slice[3] === arr[3]); // true

slice[3].push(5);
console.log(arr[3]); // [4,5]

한 겹만 복사되니까 => 얕은 복사



Reference

  1. spread 문법
    https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_syntax

  2. 구조 분해 할당
    https://ko.javascript.info/destructuring-assignment#ref-611

  3. 원시값과 참조값
    https://serzhul.io/javascript/11.%EC%9B%90%EC%8B%9C-%EA%B0%92%EA%B3%BC-%EA%B0%9D%EC%B2%B4%EC%9D%98-%EB%B9%84%EA%B5%90/

0개의 댓글