func.js 1.7 KB

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