title: Nullish coalescing assignment operator (??=) in NodeJS
body: <p>I'm trying to use the Nullish coalescing assignment operator (??=) in NodeJS, it is possible?</p>
  <pre class="lang-js prettyprint-override"><code>const setValue = (object, path, value) =&gt; {
    const indices = {
        first: 0,
        second: 1
      },
      keys = path.replace(new RegExp(Object.keys(indices).join('|'), 'g'), k =&gt; indices[k]).split('.'),
      last = keys.pop();
  
    keys
      .reduce((o, k, i, kk) =&gt; o[k] ??= isFinite(i + 1 in kk ? kk[i + 1] : last) ? [] : {}, object)[last] = value;
  
    return obj;
  }
  </code></pre>
  <pre><code>est.js:9
         .reduce((o, k, i, kk) =&gt; o[k] ??= isFinite(i + 1 in kk ? kk[i + 1] : last) ? [] : {}, object)
                                        ^
  
  SyntaxError: Unexpected token '?'
          at wrapSafe (internal/modules/cjs/loader.js:1067:16)
          at Module._compile (internal/modules/cjs/loader.js:1115:27)
          at Object.Module._extensions..js (internal/modules/cjs/loader.js:1171:10)
          at Module.load (internal/modules/cjs/loader.js:1000:32)
          at Function.Module._load (internal/modules/cjs/loader.js:899:14)
          at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
          at internal/main/run_main_module.js:17:47
  </code></pre>