javascript – 如何在ES2015中将所有属性解构为当前范围/闭包?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – 如何在ES2015中将所有属性解构为当前范围/闭包?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含971字,纯文字阅读大概需要2分钟。
内容图文
![javascript – 如何在ES2015中将所有属性解构为当前范围/闭包?](/upload/InfoBanner/zyjiaocheng/715/a8596705483a430eb07f96863253ff1d.jpg)
我想做这样的事情:
const vegetableColors = {corn: 'yellow', peas: 'green'};
const {*} = vegetableColors;
console.log(corn);// yellow
console.log(peas);// green
我似乎无法找到或弄清楚如何做到这一点,但我真的以为我以前见过它! :P
注意:我使用Babel,舞台设置为0;
背景:我试图在JSX干燥,并没有参考this.state或this.props无处不在.如果数据发生变化,也不必继续为destructure添加属性.
解决方法:
我想你正在寻找with statement,它完全符合你的要求:
const vegetableColors = {corn: 'yellow', peas: 'green'};
with (vegetableColors) {
console.log(corn);// yellow
console.log(peas);// green
}
但是,它被弃用(在严格模式下,包括ES6模块),这是有充分理由的.
destructure all properties into the current scope
你不能在ES61. And that’s a good thing.明确你要介绍的变量:
const {corn, peas} = vegetableColors;
或者,您可以使用Object.assign(global,vegetableColors)扩展全局对象以将它们放在全局范围内,但实际上,这比使用with语句更糟糕.
1:……虽然我不知道在ES7中是否有草案允许这样的事情,但我可以告诉你任何提案都会被TC核实:-)
内容总结
以上是互联网集市为您收集整理的javascript – 如何在ES2015中将所有属性解构为当前范围/闭包?全部内容,希望文章能够帮你解决javascript – 如何在ES2015中将所有属性解构为当前范围/闭包?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。