以下是遍历 JavaScript 对象时,将值为 0 和 false 的属性返回 "undefined" 的解决方法的代码示例:
function replaceFalsyValues(obj) {
for (let key in obj) {
if (obj.hasOwnProperty(key)) {
if (obj[key] === 0 || obj[key] === false) {
obj[key] = "undefined";
}
}
}
return obj;
}
// 示例用法
let myObj = {
name: "John",
age: 0,
isActive: false,
isAdmin: true
};
let updatedObj = replaceFalsyValues(myObj);
console.log(updatedObj);
// 输出: {name: "John", age: "undefined", isActive: "undefined", isAdmin: true}
在上述代码中,replaceFalsyValues
函数遍历传入的对象 obj
的所有属性。如果属性的值为 0 或 false,则将该属性的值更改为 "undefined"。最后,返回更新后的对象。
在示例中,我们创建了一个名为 myObj
的对象,其中包含了一个值为 0 和 false 的属性。通过调用 replaceFalsyValues
函数并将 myObj
作为参数传递,我们可以得到一个更新后的对象 updatedObj
,其中值为 0 和 false 的属性已经被替换为 "undefined"。最后,我们通过 console.log
输出 updatedObj
,并验证更改是否生效。