这里引用了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 }