Javascript变量声明,用括号括住初始化的变量
Javascript variable declaration with brackets around initialized variables
在React原生网站中,有以下代码行:
var React = require('react-native');
var { TabBarIOS, NavigatorIOS } = React;
在示例的第二行中,TabBarIOS和NavigatorIOS变量周围的括号是什么意思?
这称为解构赋值。这是ECMAScript 6规范中引入的新特性。
下面是一个示例对象:
var test = {
"hello": 1,
"world": 2
}
如果我们像这样解构它:
var {hello, world} = test;
这相当于:
var hello = test.hello,
world = test.world;
但是,你可以用解构赋值做更多有趣的事情…
假设我们有这样一个对象:
var bucket = {
ExampleObject: function(input){
this.input = input.trim();
return this.input;
},
TestingObject: function(example){
this.example = example || {};
console.log(this.example.input);
}
}
为了记录,我给成员起了讨厌的名字…因此,在解构时,我们可以这样重命名它们:
var {ExampleObject: Example, TestingObject: Test} = bucket;
绑定模式遵循如下语法:
{ObjectMemberName}
// Or
{ObjectMemberName: VariableName}
有关更多信息,您可以查看ECMAScript 6规范草案或MDN文档
相关文章:
- 使用名称初始化 ng-app 会禁用变量初始化
- 使用变量初始化数组:意外的令牌 +
- 使用变量初始化javascript数组
- 使用jQuery.when时进行了奇怪的变量初始化
- 使用angularjs范围变量初始化javascript变量
- 异步角度承诺和变量初始化
- JavaScript 变量初始化显示 NaN
- 使用静态变量初始化同一类中的变量
- JavaScript 中正确的“私有”变量初始化
- 角度 - 全局变量初始化一次 - 页眉中的示例用户名
- 角度变量初始化
- 对象变量初始化
- Snap SVG - 我可以使用多个变量初始化 snap.svg 指向标记中的不同 svg ID 吗?
- 使用 PHP 变量初始化选择标签
- JavaScript 在没有全局变量初始化值的情况下得到错误
- Javascript变量初始化
- AngularJS-$rootScope变量初始化失败
- Javascript 变量初始化语法
- 在变量初始化时运行代码
- 为什么这个变量初始化不对数字生效?