javascript - changing an object key's values - Stack Overflow

How can I change the **obj2 **values instead of doing it one by one as shownis there a way that doing

How can I change the **obj2 **values instead of doing it one by one as shown is there a way that doing it at once ?

const obj1={
  name:`serag`,
  age:30,
  children:
  {
    daughter:`leila`,
    son:`seif`
  }
};

const obj2 = JSON.parse(JSON.stringify(obj1));

let {name,age,children}=obj2;
// obj2.name =`omar`;
// obj2.age=30;
// obj2.children.daughter=`huda`;
// obj2.children.son=`ahmed`;

I just started to learn JS consider myself a beginner

How can I change the **obj2 **values instead of doing it one by one as shown is there a way that doing it at once ?

const obj1={
  name:`serag`,
  age:30,
  children:
  {
    daughter:`leila`,
    son:`seif`
  }
};

const obj2 = JSON.parse(JSON.stringify(obj1));

let {name,age,children}=obj2;
// obj2.name =`omar`;
// obj2.age=30;
// obj2.children.daughter=`huda`;
// obj2.children.son=`ahmed`;

I just started to learn JS consider myself a beginner

Share Improve this question asked Nov 17, 2024 at 16:29 MaxMax 33 bronze badges 3
  • What you're asking (technically) is: how to clone an object in JavaScript. There's many methods as already answered herein. But, thought this might help if you wanted to research it some more. – Joe Johnson Commented Nov 17, 2024 at 18:58
  • If this data structure is supposed to represent real "people", you're likely not going to have fun with it in its current form for long ... As soon as you will encounter a person that has more than one son or more than one daughter, how are you going to stick that info into there then ...? – C3roe Commented Nov 18, 2024 at 9:50
  • Really appreciates your replies, I did searched yesterday for how to shallow or deep copy before asking and all works fine the thing is how if I have a lot information in the copied object and I want to edit it without going on one by one it would be tedious to do so that's what I meant , I believe there is another way than using object but I wanted to know if it's done while using this DS first as I learn down the road @C3roe – Max Commented Nov 18, 2024 at 12:44
Add a comment  | 

2 Answers 2

Reset to default 1

One of the many ways is to use spread operator.

const obj3 = {...obj1}

You can also use Object.assing() for shallow copy.

const shallowCopy = Object.assign({}, obj1);

For more information please have a look at this.

Hope, this helps.

You can use object assign to clone and modify the object at once.

// obj1 
const obj2 = Object.assign({}, obj1, {
  name: "omar",
  age: 35,
  children: Object.assign({}, obj1.children, {
    daughter: "huda",
    son: "ahmed",
  }),
});

发布者:admin,转转请注明出处:http://www.yc00.com/questions/1745631715a4637148.html

相关推荐

  • javascript - changing an object key's values - Stack Overflow

    How can I change the **obj2 **values instead of doing it one by one as shownis there a way that doing

    22天前
    30

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信