jQuery와 같은 모든 프레임 워크에 JS 객체를 잘라내는 유틸리티가 있는지 궁금합니다 (하나 이상의 가능한 결과가 있지만 아직 유용하지 않습니다). 어떤 경우JS 객체의 모든 속성을 "빈 상태"로 반환합니다.
{ // original object
foo: "bar",
arr: [1, 2, 3],
sub: {a: 4, b: 5, subsub: {c: 6}} }
{ // truncated, variant 1
foo: "",
arr: [],
sub: {} }
{ // truncated, variant 2
foo: "",
arr: [],
sub: {subsub: {}} }
{ // truncated, variant 3
foo: "",
arr: [],
sub: {a: 0, b: 0, subsub: {c: 0}} }
, 해결책이 필요한 경우 재귀 적으로 모든 속성을 반복 유형을 확인하고 제거/재설정하는 것보다 더 영리 있는가?
+1 훌륭한 아이디어이지만'undefined' 나'null' 값에는 사용할 수 없습니다. – Oriol
@Oriol Thx, fixed. –
멋지고 간결한 감사합니다! 'Date'는 * now *로 재설정되고 함수도 잘립니다. 'NaN'과'Infinity'는 모두'0'으로 리셋됩니다. 이는 둘 다'number' 타입이기 때문에 의미가 있습니다. – CoDEmanX