rocessor.js 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124
  1. //身份证验证
  2. export function isCardNo(card) {
  3. // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
  4. var reg =
  5. /(^[1-9]\d{5}(18|19|([23]\d))\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{3}[0-9Xx]$)|(^[1-9]\d{5}\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\d{2}$)/;
  6. if (reg.test(card) === false) {
  7. console.log(card);
  8. return false;
  9. }
  10. return true
  11. }
  12. // 金额显示变化
  13. export function getMoneyStyle(value = 0) {
  14. if (typeof value == 'string') {
  15. value = (+value).toFixed(2)
  16. }
  17. if (typeof value == 'number') {
  18. value = value.toFixed(2)
  19. }
  20. // 将字符串转为数组
  21. let n = value.split("");
  22. // 反转数组并复制循环处理
  23. let arr = n.reverse().map(function(e, ind, ar) {
  24. // 判断当前下标是否为3的整数倍数且不为最后一个下标
  25. if (ind % 3 == 0 && ind / 3 > 1 && ind != ar.length) {
  26. return e + ','
  27. } else {
  28. return e
  29. }
  30. })
  31. // 反转数组回复原来排序并合并回字符串
  32. arr = arr.reverse().join('')
  33. return arr;
  34. }
  35. // 倒计时计算
  36. // 计算倒计时时间
  37. export function timeComputed(time) {
  38. // 判断是否当前时间大于结束时间
  39. let tpye = false
  40. // 获取当前时间
  41. const actTime = (new Date()).getTime();
  42. // 获取到期时间
  43. let stopTime = time - actTime;
  44. // 判断是否小于0
  45. if (stopTime < 0) {
  46. stopTime = stopTime * -1
  47. tpye = true
  48. }
  49. let day = Math.floor(stopTime / 1000 / 60 / 60 / 24) //获取剩余天数
  50. let hours = Math.floor((stopTime / 1000 / 60 / 60) % 24); //获取剩余小时数
  51. let minutes = Math.floor((stopTime / 1000 / 60) % 60); //获取分钟
  52. let seconds = Math.floor((stopTime / 1000) % 60); //获取秒数
  53. return {
  54. hours, //倒计时小时数
  55. minutes, //倒计时分钟数
  56. seconds, //倒计时秒数
  57. day, //倒计时天数
  58. tpye
  59. }
  60. }
  61. // 调用打开地图方法
  62. export function openMap(e) {
  63. const that = this
  64. return new Promise((resolve, reject) => {
  65. wx.getSetting({
  66. success(res) {
  67. //这里判断是否有地位权限
  68. if (!res.authSetting['scope.userLocation']) {
  69. wx.showModal({
  70. title: '提示',
  71. content: '请求获取位置权限',
  72. success: function(res) {
  73. if (res.confirm == false) {
  74. // 授权失败
  75. reject()
  76. return false;
  77. }
  78. wx.openSetting({
  79. success(res) {
  80. //如果再次拒绝则返回页面并提示
  81. if (!res.authSetting['scope.userLocation']) {
  82. wx.showToast({
  83. title: '此功能需获取位置信息,请重新设置',
  84. duration: 3000,
  85. icon: 'none'
  86. })
  87. } else {
  88. //允许授权,调用地图
  89. resolve()
  90. }
  91. }
  92. })
  93. }
  94. })
  95. } else {
  96. //如果有定位权限,调用地图
  97. resolve()
  98. }
  99. }
  100. })
  101. })
  102. }
  103. //时间戳转换成时间
  104. export function getTime(time) {
  105. const num =13 - (time+'').length;
  106. let l = 1;//倍数
  107. for (let i = 0; i < num; i++) {
  108. l+='0';
  109. }
  110. // 重新解析为数字
  111. l = parseInt(l)
  112. const date = new Date(parseInt(time) * l);
  113. const year = date.getFullYear();
  114. const mon = date.getMonth() + 1;
  115. const day = date.getDate();
  116. const hours = date.getHours();
  117. const minu = date.getMinutes();
  118. const sec = date.getSeconds();
  119. return year + '-' + mon + '-' + day + ' ' + hours + ':' + minu + ':' + sec;
  120. }