Javascript 数组中的js对象值转换为字符串

Javascript 数组中的js对象值转换为字符串,javascript,Javascript,在所有情况下,代码都可以将值的类型更改为字符串。 但我想知道是否有更好/更清洁的方法,即使使用lodash const dummyResult = [ { id: 1, value: false }, { id: 2, value: true }, { id: 3, value: 'text' } ] for (let i = 0; i < dummyResult.length; i++) { if (typeof (dummyResult[i].valu

在所有情况下,代码都可以将
值的类型更改为字符串。
但我想知道是否有更好/更清洁的方法,即使使用lodash

const dummyResult = [
    { id: 1, value: false },
    { id: 2, value: true },
    { id: 3, value: 'text' }
]

for (let i = 0; i < dummyResult.length; i++) {
    if (typeof (dummyResult[i].value) === 'boolean') {
        dummyResult[i].value = dummyResult[i].value.toString()
    }
}

如果你是说更短,这是一种方法

const dummyResult=[
{id:1,值:false},
{id:2,value:true},
{id:3,值:'text'}
]
console.log(
映射(a=>{return{id:a.id,value:a.value.toString()})
)
只需使用forEach:

const dummyResult=[
{id:1,值:false},
{id:2,value:true},
{id:3,值:'text'}
]
forEach(e=>typeof e.value==='boolean'&&(e.value=e.value.toString());

console.log(dummyResult)
您只需使用
forEach
循环数组,并将
value
属性的值转换为字符串:

const dummyResult=[
{id:1,值:false},
{id:2,value:true},
{id:3,值:'text'}
]
var-res=[];
dummyResult.forEach((obj)=>{
obj.value=obj.value.toString();
res.push(obj);
});

控制台日志(res)什么是“更好的”是个人意见。我投票将这个问题作为离题题结束,因为它最适合@Satpal。推荐CR上的OP帖子是可以的,但在将来,请不要使用代码审查作为结束问题的理由。评估请求并使用一个理由,比如过于宽泛,主要是基于意见的,等等。然后你可以向OP提到,如果是,它可以发布在代码审查上。请参阅此处的“使用map时不应执行的操作”部分。省略
{return
时节省了几个字节。是否删除了所有空格以使其尽可能简洁?:D@JonasW.我知道,只是想说清楚,我可以做
a=>({id:a.id,value:a.value.toString())}
并保存一些字节,但这不是代码,或者您甚至可以执行
a=>({…a,value:String(a.value)})
 dummyResult = [
    { id: 1, value: 'false'},
    { id: 2, value: 'true' },
    { id: 3, value: 'text' }
]