Computer >> 컴퓨터 >  >> 프로그램 작성 >> JavaScript

JSON.stringify() 메소드가 동작할 때 객체 내부의 함수를 삭제하지 않는 방법은?


JSON.stringify() 방법은 문자열화 뿐만 아니라 개체이지만 모든 기능 도 제거합니다. 해당 개체 내부에서 발견된 경우. 따라서 기능 을 만들려면 삭제되지 않음 문자열로 변환되어야 합니다. 그런 다음 JSON.stringify()만 방법을 적용해야 합니다.

함수 이후의 다음 예에서 문자열로 변환되지 않고 JSON.stringify() 메소드로 동작시 삭제되며 다른 속성은 출력과 같이 표시됩니다.

예시

<html>
<body>
<p id="stringify"></p>
<script>
   var person = { name: function () {return Ram + Rahim;},
   designation:"Developer" , city: "Hyderabad" };
   var myJSON = JSON.stringify(person);
   document.getElementById("stringify").innerHTML = myJSON;
</script>
</body>
</html>

출력

{"designation":"Developer","city":"Hyderabad"}

다음 예에서는 JSON.stringify()에 의해 조작되기 전에 메소드, 함수 to를 사용하여 문자열로 변환되었습니다. 문자열() 방법. 따라서 JSON.stringify()에 의해 작동될 때 함수가 삭제되지 않았습니다. 방법.

예시

<html>
<body>
<p id="stringify"></p>
<script>
   var obj = { name: function () {return Ram + Rahim;},
   designation:"Developer" , city: "Hyderabad" };
   obj.name = obj.name.toString();
   var myJSON = JSON.stringify(obj);
   document.getElementById("stringify").innerHTML = myJSON;
</script>
</body>
</html>

출력

{"name":"function () {return Ram + Rahim;}","designation":"Developer","city":"Hyderabad"}