Search code examples
javascriptautovivification

Autovivification and Javascript


Does autovivification only have to do with "derefencing" undefined structures, because in JavaScript if you specify a index or a property that doesn't exist won't it dynamically create it? But is this not autovivification because you must declare the underlying structure to first be an object or an array?


Solution

  • Namespacing is one area where autovivification might be handy in JavaScript. Currently to "namespace" an object, you have to do this:

    var foo = { bar: { baz: {} } };
    foo.bar.baz.myValue = 1;
    

    Were autovivification supported by JavaScript, the first line would not be necessary. The ability to add arbitrary properties to objects in JavaScript is due to its being a dynamic language, but is not quite autovivification.