Javascript变量声明,用括号括住初始化的变量

Javascript variable declaration with brackets around initialized variables

本文关键字:变量 初始化 声明 Javascript      更新时间:2023-09-26

在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文档