util.js 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. var SIGN_REGEXP = /([yMdhsm])(\1*)/g;
  2. var DEFAULT_PATTERN = 'yyyy-MM-dd';
  3. function padding(s, len) {
  4. var len = len - (s + '').length;
  5. for (var i = 0; i < len; i++) { s = '0' + s; }
  6. return s;
  7. };
  8. export function filterMoney(value, num = 0) {
  9. num = num > 0 && num <= 20 ? num : 0;
  10. value = parseFloat((value + "").replace(/[^\d\.-]/g, ""))+ ""; //将金额转成比如 123.45的字符串
  11. var valueArr = value.split(".")[0].split("").reverse() //将字符串的数变成数组
  12. let valueString = "";
  13. for (let i = 0; i < valueArr.length; i++) {
  14. valueString += valueArr[i] + ((i + 1) % 3 == 0 && (i + 1) != valueArr.length ? "," : ""); //循环 取数值并在每三位加个','
  15. }
  16. const money = valueString.split("").reverse().join(""); //拼接上小数位
  17. return money
  18. }
  19. export default {
  20. getQueryStringByName: function (name) {
  21. var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i");
  22. var r = window.location.search.substr(1).match(reg);
  23. var context = "";
  24. if (r != null)
  25. context = r[2];
  26. reg = null;
  27. r = null;
  28. return context == null || context == "" || context == "undefined" ? "" : context;
  29. },
  30. //时间撮格式化
  31. formatDatee(time){
  32. let date = new Date(time), //时间戳为10位需*1000,时间戳为13位的话不需乘1000
  33. Y = date.getFullYear() + '-',
  34. M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1) + '-',
  35. D = date.getDate() < 10 ? '0'+ date.getDate() + ' ' : date.getDate() + ' ',
  36. h = date.getHours() + ':',
  37. m = date.getMinutes() < 10 ? '0'+ date.getMinutes() + ':' : date.getMinutes() + ':',
  38. s = date.getSeconds() < 10 ? '0'+ date.getSeconds() : date.getSeconds();
  39. return Y + M + D + h + m + s;
  40. },
  41. formatDate: {
  42. format: function (date, pattern) {
  43. pattern = pattern || DEFAULT_PATTERN;
  44. return pattern.replace(SIGN_REGEXP, function ($0) {
  45. switch ($0.charAt(0)) {
  46. case 'y': return padding(date.getFullYear(), $0.length);
  47. case 'M': return padding(date.getMonth() + 1, $0.length);
  48. case 'd': return padding(date.getDate(), $0.length);
  49. case 'w': return date.getDay() + 1;
  50. case 'h': return padding(date.getHours(), $0.length);
  51. case 'm': return padding(date.getMinutes(), $0.length);
  52. case 's': return padding(date.getSeconds(), $0.length);
  53. }
  54. });
  55. },
  56. parse: function (dateString, pattern) {
  57. var matchs1 = pattern.match(SIGN_REGEXP);
  58. var matchs2 = dateString.match(/(\d)+/g);
  59. if (matchs1.length == matchs2.length) {
  60. var _date = new Date(1970, 0, 1);
  61. for (var i = 0; i < matchs1.length; i++) {
  62. var _int = parseInt(matchs2[i]);
  63. var sign = matchs1[i];
  64. switch (sign.charAt(0)) {
  65. case 'y': _date.setFullYear(_int); break;
  66. case 'M': _date.setMonth(_int - 1); break;
  67. case 'd': _date.setDate(_int); break;
  68. case 'h': _date.setHours(_int); break;
  69. case 'm': _date.setMinutes(_int); break;
  70. case 's': _date.setSeconds(_int); break;
  71. }
  72. }
  73. return _date;
  74. }
  75. return null;
  76. }
  77. },
  78. };