IT이야기

Javascript json 객체 복사

cyworld 2021. 2. 17. 15:12
반응형

ES5기준으로 json 타입의 객체를 복사하는 방법은 흔히..

obj = JSON.parse(JSON.stringify(o));

 

이 방법을 사용하지만 Date()은 string형식으로 undefined 값은 가진 항목은 사라지는 등의 부작용은 있다라는 점 참고하셔야 합니다.

<html>
<head>
<title>테스트</title>
<script src="jquery-1.10.2.min.js"></script>
<script>
var a = {
  string: 'string',
  number: 123,
  bool: false,
  nul: null,
  date: new Date(),  // stringified
  undef: undefined,  // lost
  inf: Infinity,  // forced to 'null'
  re: /.*/,  // lost
}
console.log(a);
console.log(typeof a.date);  // Date object
var clone = JSON.parse(JSON.stringify(a));
console.log(clone);
console.log(typeof clone.date);  // result of .toISOString()
</script>
</head>
</body>
</html>

 

크롬 브라우저에서의 결과)

실행 결과

반응형