Javascript 如何以函数方式修改对象的所有属性
我需要创建一个函数,该函数创建一个新对象,其中Javascript 如何以函数方式修改对象的所有属性,javascript,Javascript,我需要创建一个函数,该函数创建一个新对象,其中的所有属性设置为true,该函数应创建一个新对象 如何使用香草js?我可以使用解构主义和最新的JS const in = { ida:true, idb:false, idc:false, ide:true } 需要结果 const out = { ida:true, idb:true, idc:true, ide:true } 您可以使
的所有属性设置为true
,该函数应创建一个新对象
如何使用香草js?我可以使用解构主义和最新的JS
const in = {
ida:true,
idb:false,
idc:false,
ide:true
}
需要结果
const out = {
ida:true,
idb:true,
idc:true,
ide:true
}
您可以使用新对象映射所有关键点,并将false
作为值。稍后将它们指定给单个对象
const
inO={ida:true,idb:false,idc:false,ide:true},
outO=Object.assign(…Object.keys(inO.map)(k=>({[k]:true}));
控制台日志(outO)
您可以使用新对象映射所有键,并将false
作为值。稍后将它们指定给单个对象
const
inO={ida:true,idb:false,idc:false,ide:true},
outO=Object.assign(…Object.keys(inO.map)(k=>({[k]:true}));
控制台日志(outO)代码>好的,您可以使用Object.keys
和spread操作符来完成此操作:
const输入={
艾达:没错,
idb:错,
idc:错,
艾德:没错
}
const out=Object.keys(input).reduce((acc,key)=>({…acc,[key]:true}),{});
console.log(out)
您可以使用Object.keys
和spread操作符来完成此操作:
const输入={
艾达:没错,
idb:错,
idc:错,
艾德:没错
}
const out=Object.keys(input).reduce((acc,key)=>({…acc,[key]:true}),{});
console.log(out)
您可以使用for..in循环,循环遍历对象的键:
函数setTrue(obj){
对于(obj中的k)obj[k]=真;
}
常数o={
艾达:没错,
idb:错,
idc:错,
艾德:没错
}
设置为真(o);
控制台日志(o)代码>您可以使用for..in循环,循环遍历对象的键:
函数setTrue(obj){
对于(obj中的k)obj[k]=真;
}
常数o={
艾达:没错,
idb:错,
idc:错,
艾德:没错
}
设置为真(o);
控制台日志(o)代码>我已尝试使用reduce,但没有结果..:(请发布,你可能复制的“如何使用vanilla js?”的可能复制品是什么?——使用一个不变的库。不要重新发明轮子。我尝试过reduce,但没有结果……(请发布,你可能复制的“如何使用vanilla js?”的可能复制品是什么-使用不可变库。不要重新发明轮子。谢谢,但我希望此警告至少包含1个参数,但得到0个或更多参数。我正在使用typescriptWith destructuring。我发现使用{…Object.keys}而不是Object更优雅。assign@Logar这和我的回答一样:)@J.Pichardo啊,是的,刚刚注意到:)谢谢,但我希望此警告至少包含1个参数,但得到0个或更多参数。我正在使用typescriptWith destructuring。我发现使用{…Object.keys}而不是Object更优雅。assign@Logar这和我的回答一样:)@J.Pichardo啊,是的,刚刚注意到:)