javascript - 应对对象元素

问题描述 投票:0回答:3

我正在尝试将名称从一个对象复制到另一个对象,如下所示:

console.log(this.source.name)

//给"mike"

mounted: function() {
   this.client.name = Object.assign({}, this.source.name)
}

然后

console.log(this.client.name)

//用1: m, 2: i, 3: k, 4:e给对象

我做错了什么?我该如何更正我的代码?

javascript
3个回答
1
投票

Object.assign采取两个物体参数,但你将string传递给第二个参数。所以,如果你想分配字符串值,只需做this.client.name = this.source.name

如果要复制对象值,请使用Object.assign并将对象存储在this.source.name中作为this.source.name={"key":"value"};


1
投票

您可以使用以下调整:

this.client = Object.assign({}, this.client,  {name: this.source.name})

0
投票

我会使用ES6 spread operator语法

const b = {iam b}
const a = {...b}
console.log(a) // {iam b}
© www.soinside.com 2019 - 2024. All rights reserved.