如何用对象中的破折号替换所有空值?

How to replace all nulls with dash in object?

我有一个对象,对于所有具有空值的键,我想将此空值替换为空字符串(在我的例子中是破折号)?

例如

Obj = {

key1: null,
key2: null,
key3: true,
...
key_n: null

}

变成

Obj = {

key1: "-",
key2: "-",
key3: true,
...
key_n: "-"

}

这会奏效。

const Obj = {
  key1: null,
  key2: null,
  key3: true,

  key_n: null
};

for (const key in Obj) {
  const val = Obj[key];

  if (val === null) {
    Obj[key] = "-";
  }
}
console.log(Obj);

你只需要匹配一个键对应的值是否为null,如果是则将其更改为下划线

Obj = {

    key1: null,
    key2: null,
    key3: true,
    key_n: null

    }

    Object.keys(Obj).map(key=>{
        if(!Obj[key])Obj[key] = "_"
    })
    console.log(Obj)

const obj = {
  key1: null,
  key2: null,
  key3: true,
  key_n: null
};
Object
  .entries(obj)
  .forEach(function ([key, value]) {
    if (value === null) {

      this[key] = '-';
    }
  }, obj); // make use of `forEach`'s `thisArg` parameter.

console.log({ obj });