func.js 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. /**
  2. * 不为空
  3. * @param val
  4. * @returns {boolean}
  5. */
  6. export function notEmpty(val) {
  7. return !this.isEmpty(val);
  8. }
  9. /**
  10. * 为空
  11. * @param val
  12. * @returns {boolean}
  13. */
  14. export function isEmpty(val) {
  15. if (
  16. val === null ||
  17. typeof val === 'undefined' ||
  18. (typeof val === 'string' && val === '' && val !== 'undefined')
  19. ) {
  20. return true;
  21. }
  22. return false;
  23. }
  24. /**
  25. * 强转int型
  26. * @param val
  27. * @param defaultValue
  28. * @returns {number}
  29. */
  30. export function toInt(val, defaultValue) {
  31. if (this.isEmpty(val)) {
  32. return defaultValue === undefined ? -1 : defaultValue;
  33. }
  34. const num = parseInt(val, 0);
  35. return Number.isNaN(num) ? (defaultValue === undefined ? -1 : defaultValue) : num;
  36. }
  37. /**
  38. * Json强转为Form类型
  39. * @param obj
  40. * @returns {FormData}
  41. */
  42. export function toFormData(obj) {
  43. const data = new FormData();
  44. Object.keys(obj).forEach(key => {
  45. data.append(key, Array.isArray(obj[key]) ? obj[key].join(',') : obj[key]);
  46. });
  47. return data;
  48. }
  49. /**
  50. * date类转为字符串格式
  51. * @param date
  52. * @param format
  53. * @returns {null}
  54. */
  55. export function format(date, format = 'YYYY-MM-DD HH:mm:ss') {
  56. return date ? date.format(format) : null;
  57. }
  58. /**
  59. * 根据逗号联合
  60. * @param arr
  61. * @returns {string}
  62. */
  63. export function join(arr) {
  64. return arr ? arr.join(',') : '';
  65. }
  66. /**
  67. * 根据逗号分隔
  68. * @param str
  69. * @returns {string}
  70. */
  71. export function split(str) {
  72. return str ? String(str).split(',') : '';
  73. }