首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >ES6结构化作业?

ES6结构化作业?
EN

Stack Overflow用户
提问于 2015-06-17 17:04:29
回答 1查看 2.8K关注 0票数 15

ES6的新的破坏性赋值特性现在已经相当为人所知(活拷贝 on Babel‘Babel);对于已经存在的变量:

代码语言:javascript
运行
复制
let a, b;                 // Existing variables
let o = {a: "a", b: "b"}; // An object to get values from
// ...
({a, b} = o);             // Set them to the props from `o`
console.log(a);           // "a"
console.log(b);           // "b"

在ES6中有简单的逆流吗?根据同名变量设置现有对象的属性?(不包括明显的o.a = a; o.b = b;)

注意,我不是在创建对象时,我们可以使用奇妙的新对象初始化器语法来做到这一点,它允许我们不必不必要地重复名称:

代码语言:javascript
运行
复制
let a = "a";
let b = "b";
let o = {a, b};

但是如果我已经有了一个对象,我可以在ES6中执行某种结构化的赋值吗?

EN

回答 1

Stack Overflow用户

发布于 2015-06-17 18:28:59

一些实验的东西,建立在你回答的基础上。

如果你想得到一点厚颜无耻,你可以模仿它的分配部分与设置者。当然不实用,但这是一个有趣的方法,可以看到外部的行为可能是什么样子,如果您可能可以空分配o[] =。(巴贝尔

代码语言:javascript
运行
复制
let a = '1', b = '2';
let o = {z: '26'};

Object.defineProperty(Object.prototype, '', {
  set: function (o) {
    Object.assign(this, o);
  }, configurable: true
});

o[''] = {a, b};

同样的问题,你面对你的答案,其实更多,但一些食物的思考。

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

https://stackoverflow.com/questions/30897961

复制
相关文章

相似问题

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