| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167 | 
							- /**
 
-  * Created by PanJiaChen on 16/11/18.
 
-  */
 
- /**
 
-  * Parse the time to string
 
-  * @param {(Object|string|number)} time
 
-  * @param {string} cFormat
 
-  * @returns {string}
 
-  */
 
- export function parseTime(time, cFormat) {
 
-   if (arguments.length === 0) {
 
-     return null
 
-   }
 
-   const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}'
 
-   let date
 
-   if (typeof time === 'object') {
 
-     date = time
 
-   } else {
 
-     if ((typeof time === 'string') && (/^[0-9]+$/.test(time))) {
 
-       time = parseInt(time)
 
-     }
 
-     if ((typeof time === 'number') && (time.toString().length === 10)) {
 
-       time = time * 1000
 
-     }
 
-     date = new Date(time)
 
-   }
 
-   const formatObj = {
 
-     y: date.getFullYear(),
 
-     m: date.getMonth() + 1,
 
-     d: date.getDate(),
 
-     h: date.getHours(),
 
-     i: date.getMinutes(),
 
-     s: date.getSeconds(),
 
-     a: date.getDay()
 
-   }
 
-   const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
 
-     let value = formatObj[key]
 
-     // Note: getDay() returns 0 on Sunday
 
-     if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value] }
 
-     if (result.length > 0 && value < 10) {
 
-       value = '0' + value
 
-     }
 
-     return value || 0
 
-   })
 
-   return time_str
 
- }
 
- /**
 
-  * @param {number} time
 
-  * @param {string} option
 
-  * @returns {string}
 
-  */
 
- export function formatTime(time, option) {
 
-   if (('' + time).length === 10) {
 
-     time = parseInt(time) * 1000
 
-   } else {
 
-     time = +time
 
-   }
 
-   const d = new Date(time)
 
-   const now = Date.now()
 
-   const diff = (now - d) / 1000
 
-   if (diff < 30) {
 
-     return '刚刚'
 
-   } else if (diff < 3600) {
 
-     // less 1 hour
 
-     return Math.ceil(diff / 60) + '分钟前'
 
-   } else if (diff < 3600 * 24) {
 
-     return Math.ceil(diff / 3600) + '小时前'
 
-   } else if (diff < 3600 * 24 * 2) {
 
-     return '1天前'
 
-   }
 
-   if (option) {
 
-     return parseTime(time, option)
 
-   } else {
 
-     return (
 
-       d.getMonth() +
 
-       1 +
 
-       '月' +
 
-       d.getDate() +
 
-       '日' +
 
-       d.getHours() +
 
-       '时' +
 
-       d.getMinutes() +
 
-       '分'
 
-     )
 
-   }
 
- }
 
- /**
 
-  * @param {string} url
 
-  * @returns {Object}
 
-  */
 
- export function param2Obj(url) {
 
-   const search = url.split('?')[1]
 
-   if (!search) {
 
-     return {}
 
-   }
 
-   return JSON.parse(
 
-     '{"' +
 
-     decodeURIComponent(search)
 
-       .replace(/"/g, '\\"')
 
-       .replace(/&/g, '","')
 
-       .replace(/=/g, '":"')
 
-       .replace(/\+/g, ' ') +
 
-     '"}'
 
-   )
 
- }
 
- /**
 
-  * Check if an element has a class
 
-  * @param {HTMLElement} elm
 
-  * @param {string} cls
 
-  * @returns {boolean}
 
-  */
 
- export function hasClass(ele, cls) {
 
-   return !!ele.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)'))
 
- }
 
- /**
 
-  * Add class to element
 
-  * @param {HTMLElement} elm
 
-  * @param {string} cls
 
-  */
 
- export function addClass(ele, cls) {
 
-   if (!hasClass(ele, cls)) ele.className += ' ' + cls
 
- }
 
- /**
 
-  * Remove class from element
 
-  * @param {HTMLElement} elm
 
-  * @param {string} cls
 
-  */
 
- export function removeClass(ele, cls) {
 
-   if (hasClass(ele, cls)) {
 
-     const reg = new RegExp('(\\s|^)' + cls + '(\\s|$)')
 
-     ele.className = ele.className.replace(reg, ' ')
 
-   }
 
- }
 
- /**
 
-  * 深度合并对象
 
-  * @param FirstOBJ
 
-  * @param SecondOBJ
 
-  * @returns {*}
 
-  */
 
- export const deepObjectMerge = function(FirstOBJ, SecondOBJ) {
 
-   for (var key in SecondOBJ) {
 
-     FirstOBJ[key] = FirstOBJ[key] && FirstOBJ[key].toString() === '[object Object]' ? deepObjectMerge(FirstOBJ[key], SecondOBJ[key]) : FirstOBJ[key] = SecondOBJ[key]
 
-   }
 
-   return FirstOBJ
 
- }
 
- export function getHashQuery (query) {
 
-   if (location.hash.indexOf(query) > -1) {
 
-     let cur = location.hash.slice(location.hash.indexOf(query) + query.length + 1, location.hash.length)
 
-     if (cur.indexOf('&') > -1) {
 
-       return cur.slice(0, cur.indexOf('&'))
 
-     } else {
 
-       return cur
 
-     }
 
-   } else {
 
-     return false
 
-   }
 
- }
 
 
  |