首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaScript: var {left,...props} = this.props;

JavaScript: var {left,...props} = this.props;
EN

Stack Overflow用户
提问于 2015-02-16 04:02:30
回答 1查看 5.4K关注 0票数 7

我读了Facebook的固定数据表的源代码,发现了

代码语言:javascript
复制
var {left, ...props} = this.props;

那是什么意思?这是一个新的语义吗?我很困惑。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-16 04:32:57

它是破坏赋值拟议为ES7的一种特殊形式(并在jsx和Babel中得到了热切的实现)。它创建两个变量:leftprops

left的值为this.props.left

props是一个具有this.props所有其他属性的对象(不包括left)。

如果您在不破坏结构的情况下编写它,它将如下所示:

代码语言:javascript
复制
var left = this.props.left;
var props = {};

Object.keys(this.props).forEach(function(key, index){
    if (key !== 'left') {
        props[key] = this.props[key];
    }
}, this);

那可不止是几个字被剃掉了:-)

票数 16
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28534344

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档