gpt4 book ai didi

javascript - 使用对象属性的不同逻辑对 JS 对象进行序列化

转载 作者:行者123 更新时间:2023-11-30 20:20:20 25 4
gpt4 key购买 nike

您好,我需要将对象的数值转换为字符串。但不同的属性有不同的转换规则。

我的示例对象:

{
name: "Name"
sRatio: 1.45040404
otherMetric: 0.009993
}

我使用 JSON.stringify 来转换我的初始对象。

let replacemet = {}
JSON.stringify(metrics[0], function (key, value) {
//Iterate over keys
for (let k in value) {
if ((k !== "sRatio") || (k !== "name")) {
replacemet[k] = (100*value[k]).toFixed(2) + "%"
} else {
if( k === "name") {
replacemet[k] = "yo!"+value[k]
} else{
replacemet[k] = value[k].toFixed(2)
}
}
}
})

但我的条件没有触发,所有属性都以相同的方式转换。

最佳答案

replacer 回调的工作不是填充一些全局 replacemet 对象,而是返回一个新值。

我想你正在寻找类似的东西

JSON.stringify(sample, function (key, value) {
if (key == "sRatio") {
return value.toFixed(2);
} else if (key == "name") {
return "yo!"+value;
} else if (typeof value == "number") {
return (100*value).toFixed(2) + "%"
} else {
return value;
}
})

关于javascript - 使用对象属性的不同逻辑对 JS 对象进行序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51515550/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com