首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有字符串的ES6对象扩展

带有字符串的ES6对象扩展
EN

Stack Overflow用户
提问于 2018-09-10 18:32:00
回答 1查看 529关注 0票数 0

假设我想使用扩展语法将一个新属性分配给一个对象

代码语言:javascript
复制
const source = { payload: "abc" }
const clone = {}
clone.payload = {...source.payload}

console.log(clone);

期待:clone={payload:"abc"}

实际:clone={payload:{'0':'a','1':'b','2':'c'}}

FYI:如果源是像这个source = { payload: { component: "correct" } }。然后,扩展语法就能正常工作了。

问:我是否误用了ES6扩展语法,正确的方法是什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-09-10 18:46:13

clone.payload = {...source.payload}意味着您创建一个新对象,并将source.payload的内容扩展到其中,然后将该新对象分配给clone.payload

为了达到预期的结果,您可以这样做:

代码语言:javascript
复制
const source = { payload: "abc" }
const clone = {...source}

这将创建一个新对象,将source扩展到其中,并将其分配给clone

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

https://stackoverflow.com/questions/52263567

复制
相关文章

相似问题

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