Was bedeutet dieser Satz?
var { auth = true } = meta
认证0级讲师
这里是ES6中对象解构
ES6
//对象的解构也可以指定默认值。 var {x = 3} = {}; x // 3 var {x, y = 5} = {x: 1}; x // 1 y // 5 var {x:y = 3} = {}; y // 3 var {x:y = 3} = {x: 5}; y // 5 var { message: msg = 'Something went wrong' } = {}; msg // "Something went wrong"
这类问题,希望你通过 babeljs.io 官方在线编译器,便以后查看
// 上面的代码,可以这样理解 var auth = meta.auth === undefined ? true : meta.auth;
解构赋值。
es6的新功能。
外面这个是解构赋值
里面这个是给默认值
var meta = { auth: 33 // 把这个去掉你看看输出的值是什么? }; // {auth = true} 是设置默认值。 var { auth = true } = meta; // meta 是一个对象, 如果auth没有, auth 等于 true console.log(auth);
用es5来写的话, 是这样:
var auth = (typeof meta.auth!=='undefined')? meta.auth: true;
ES6的解构赋值
{ auth = true } 等于是给auth赋了一个默认值,如果meta对象里面auth属性的值是undefined,就会把默认值true赋给变量auth
{ auth = true }
这里是
ES6
中对象解构这类问题,希望你通过 babeljs.io 官方在线编译器,便以后查看
解构赋值。
es6的新功能。
外面这个是解构赋值
里面这个是给默认值
用es5来写的话, 是这样:
ES6的解构赋值
{ auth = true }
等于是给auth赋了一个默认值,如果meta对象里面auth属性的值是undefined,就会把默认值true赋给变量auth