Safe access to the nested object's properties with ES6 Proxy object
$ npm install access-deepvaraccessDeep=require('access-deep');varobj={};varaccessor=accessDeep(obj);accessor.foo.bar.baz='quux';// nested objects are automatically createdconsole.log(JSON.stringify(obj));// {"foo":{"bar":{"baz":"quux"}}}accessor.foo.list[2]=12;console.log(JSON.stringify(obj));// {"foo":{"bar":{"baz":"quux"},"list":[null,12]}}console.log(accessor.foo.list[2].$val);// 12Node.js version 6 and higher
Browser support http://caniuse.com/#feat=proxy
This is only experiment, use it at your own risk