Javascript 如何在更新对象中的所有值后返回修改过的对象?
我需要为对象中的所有值添加单引号,如下所示:Javascript 如何在更新对象中的所有值后返回修改过的对象?,javascript,ecmascript-6,Javascript,Ecmascript 6,我需要为对象中的所有值添加单引号,如下所示: {name: "testUser", type: "regular"} 对象需要如下所示: {name: "'testUser'", type: "'regular'"} 我使用Object.values来实现这一点: Object.values(targetObject).map(value => value = `'${value}'`) 只是它没有准确地更新targetObject。正确的方法是什么?要更新原始对象,需要密钥。用于获
{name: "testUser", type: "regular"}
对象需要如下所示:
{name: "'testUser'", type: "'regular'"}
我使用Object.values
来实现这一点:
Object.values(targetObject).map(value => value = `'${value}'`)
只是它没有准确地更新
targetObject
。正确的方法是什么?要更新原始对象,需要密钥。用于获取键和值,使用迭代,并使用新值获取每个键:
const targetObject={name:“testUser”,键入:“regular”}
Object.entries(targetObject)//获取[key,value]对的数组
.forEach(([k,v])=>targetObject[k]=`${v}`//更新原始对象键
log(targetObject)
您可以映射新对象并将其收集到单个对象
var object={name:“testUser”,键入:“regular”},
updated=Object.assign(…Object.entries(Object.map)([k,v])=>({[k]:`${v}``}));
控制台日志(更新)代码>您可以使用迭代对象中的所有条目并更新它们:
constobj={name:“testUser”,类型:“regular”};
for(让Object.entries(obj))的[key,value]{
obj[key]=`${value}`;
}
控制台日志(obj)
您可以在
中为..循环对象的属性
const obj={name:“testUser”,键入:“regular”}
for(让k在obj中){
obj[k]=`${obj[k]}'`
}
console.log(obj)
Object.keys(yourObject).forEach(k=>{yourObject[k]=`${yourObject[k]}`;})代码>。您需要引用原始对象object.values不通过引用提供值。map
方法返回一个新对象。您需要使用for..in
来直接修改对象。这很好,因为您不需要像使用object.entries()那样创建额外的数组。