【问题标题】:lodash .get replace empty valuelodash .get 替换空值
【发布时间】:2018-03-09 14:27:52
【问题描述】:

所以我正在使用 lodash .get 从我的数据库中复制一些数组以使用它创建一个 excel 文档

object[key.key] = _.get(item, key.key, '-');

其中key 是一组数组,key.key 是一组数组列名或字段名。将数据库中的未定义值替换为- 效果很好,但也有一些字段只有一个空值,我想捕获这些字段并将其更改为-

怎么做?

【问题讨论】:

  • 什么是“空值”?一个空字符串,null,...?
  • 像“”这样的空字符串
  • 感谢您提出完美的问题。我遇到了同样的问题。

标签: javascript arrays lodash


【解决方案1】:

如果没有其他"falsy" values,那么最短的方法是:

obj[key.key] = item[key.key] || '-';

// or with lodash
obj[key.key] = _.get(item, key.key, '-') || '-';

这将用一个破折号替换每个“虚假”值。

如果这不可能:

const value = item[key.key];
obj[key.key] = (typeof value === 'undefined' || value === '') ? '-' : value;

// or with lodash
const value = _.get(item, key.key, '-');
obj[key.key] = value === '' ? '-' : value;

【讨论】:

  • 这个很有帮助!
  • 仅供参考,它不会将 null 替换为默认值,默认值也是 falsy 值。
【解决方案2】:

这应该可行:

_.get(item, key.key, '-') != '' ? _.get(item, key.key, '-') : '-';

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 2020-12-05
    • 1970-01-01
    • 1970-01-01
    • 2021-06-01
    • 2016-08-05
    • 1970-01-01
    相关资源
    最近更新 更多