@babel/plugin-proposal-nullish-coalescing-operator
Replace
??with an inline helper.
Example
In
var foo = object.foo ?? "default";
Out
var _object$foo;
var foo = (_object$foo = object.foo) !== null && _object$foo !== void 0 ? _object$foo : "default";
NOTE: We cannot use
!= nullhere becausedocument.all == nullanddocument.allhas been deemed not "nullish".
Installation
npm install --save-dev @babel/plugin-proposal-nullish-coalescing-operator
Usage
Via .babelrc (Recommended)
.babelrc
{
"plugins": ["@babel/plugin-proposal-nullish-coalescing-operator"]
}
Via CLI
babel --plugins @babel/plugin-proposal-nullish-coalescing-operator script.js
Via Node API
require("@babel/core").transform("code", {
plugins: ["@babel/plugin-proposal-nullish-coalescing-operator"]
});
Options
loose
boolean, defaults to false.
When true, this transform will pretend document.all does not exist,
and perform loose equality checks with null instead of string equality checks
against both null and undefined.
Example
In
var foo = object.foo ?? "default";
Out
var _object$foo;
var foo = (_object$foo = object.foo) != null ? _object$foo : "default";