javascript - Return all properties in JS object to "empty" state -
javascript - Return all properties in JS object to "empty" state -
i wonder if there's utility function in framework jquery truncate js object (there more 1 possible result, not sure useful yet):
{ // 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}} }    if no, there solution more clever recursively iterate on properties, check types , remove / reset if necessary?
call constructor each property create empty object of same type.
for (var k in obj) {     obj[k] = obj[k] && obj[k].constructor(); }    this homecoming numbers 0, booleans false, dates now, , regexps empty (but nans remain nan).
to recursively, retaining object-valued properties emptying them out (variant 3):
function truncate(obj) {     (var k in obj) {         var ctor = obj[k] && obj[k].constructor;         if      (ctor === object) truncate(obj[k]);         else if (ctor)            obj[k] = ctor();     } }    to eliminate numbers (variant 2), add together check:
function truncate(obj) {     (var k in obj) {         var ctor = obj[k] && obj[k].constructor;         if      (ctor === object) truncate(obj[k]);         else if (ctor === number) delete obj[k];         else if (ctor)            obj[k] = ctor();     } }        javascript object clear truncate 
 
  
Comments
Post a Comment