커뮤니티
포인트
쿠폰
내 강의실
국비 신청 내역
증명서
계정
로그아웃
학습 질문
개발 일지
나의 활동
답변 완료
3-3 깊은복사
JavaScript 문법 종합반 v0
3주차
북마크
류*준
댓글
1
추천
0
조회수
20
조회수
20
답변 완료

* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.

* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.


var copyObjectDeep = function (target) {

  var result = {};

  if (typeof target === "object" && target !== null) {

    for (var prop in target) {

      result[prop] = copyObjectDeep(target[prop]);

    }

  } else {

    result = target;

  }

  return result;

};


//결과 확인

var obj = {

  a: 1,

  b: {

    c: null,

    d: [1, 2],

  },

};

var obj2 = copyObjectDeep(obj);


obj2.a = 3;

obj2.b.c = 4;

obj2.b.d[1] = 3;


console.log(obj);

console.log(obj2);

console.log(typeof obj.b.d);

console.log(typeof obj2.b.d);


깊은복사의 obj의 d는 배열이지만 obj2의 d는 객체인데 상관이 없는건가요? 둘다 object는 맞지만 객체와 배열은 다르지 않나요?


취소
 공유
취소
댓글 0
댓글 알림
나의얼굴