过滤对象中的空内容

这里引用了underscore.js库里的方法,当然也可以转成别的实现方式,方法如下:

/**
 * [对对象中为空的进行过滤]
 * @param   obj
 * @return   obj
 */
const formatObject = (obj) => {
  _.each(obj, (item, key) => {
    if (!formatField(item)) {
      obj[key] = undefined
    }
  })
  return obj
}

const formatField = (field) => {
  if (_.isString(field) && field) {
    return true
  }

  if (_.isNumber(field) && (field || field == 0)) {
    return true
  }

  if (_.isArray(field) && field.length) {
    return true
  }

  if (_.isObject(field) && !_.isEmpty(field)) {
    field = formatObject(field)
    return true
  }

  return false
}

  

猜你喜欢

转载自www.cnblogs.com/yyh1/p/9821966.html
今日推荐