omitUndefined.js 405 B

1234567891011121314151617181920
  1. 'use strict';
  2. module.exports = function omitUndefined(val) {
  3. if (val == null || typeof val !== 'object') {
  4. return val;
  5. }
  6. if (Array.isArray(val)) {
  7. for (let i = val.length - 1; i >= 0; --i) {
  8. if (val[i] === undefined) {
  9. val.splice(i, 1);
  10. }
  11. }
  12. }
  13. for (const key of Object.keys(val)) {
  14. if (val[key] === void 0) {
  15. delete val[key];
  16. }
  17. }
  18. return val;
  19. };