util.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. /**
  2. * 工具类
  3. */
  4. class Util {
  5. static parseDate(date){
  6. var time = date==null?"": Date.parse(date.replace(/-/g, '/'));
  7. return new Date(time);
  8. }
  9. static formatTime(date) {
  10. let year = date.getFullYear();
  11. let month = date.getMonth() + 1;
  12. let day = date.getDate();
  13. let hour = date.getHours();
  14. let minute = date.getMinutes();
  15. let second = date.getSeconds();
  16. return [year, month, day].map(this.formatNumber).join('/') + ' ' + [hour, minute, second].map(this.formatNumber).join(':');
  17. };
  18. static formatTimePicker(date) {
  19. let year = date.getFullYear();
  20. let month = date.getMonth() + 1;
  21. let day = date.getDate();
  22. let hour = date.getHours();
  23. let minute = date.getMinutes();
  24. let second = date.getSeconds();
  25. return [year, month, day].map(this.formatNumber).join('-') + ' ' + [hour, minute].map(this.formatNumber).join(':');
  26. };
  27. static formatNumber(n) {
  28. n = n.toString();
  29. return n[1] ? n : '0' + n;
  30. };
  31. static distance = (la1, lo1, la2, lo2) => {
  32. var La1 = la1 * Math.PI / 180.0;
  33. var La2 = la2 * Math.PI / 180.0;
  34. var La3 = La1 - La2;
  35. var Lb3 = lo1 * Math.PI / 180.0 - lo2 * Math.PI / 180.0;
  36. var s = 2 * Math.asin(Math.sqrt(Math.pow(Math.sin(La3 / 2), 2) + Math.cos(La1) * Math.cos(La2) * Math.pow(Math.sin(Lb3 / 2), 2)));
  37. s = s * 6378.137; //地球半径
  38. s = Math.round(s * 1000) / 1000;
  39. // console.log("计算结果",s)
  40. return s
  41. }
  42. static getIp(){
  43. // wx.request({
  44. // url: 'https://ipv4.icanhazip.com/',
  45. // method: 'POST',
  46. // success(rrr){
  47. // console.info(rrr);
  48. // var query = (rrr == null?'':rrr==null?'':rrr);
  49. // return query.data;
  50. // },
  51. // fail(rrr){
  52. // return '';
  53. // }
  54. // })
  55. }
  56. };
  57. module.exports = Util;