127 lines
2.7 KiB
JavaScript
127 lines
2.7 KiB
JavaScript
function formatTime(time) {
|
||
if (typeof time !== 'number' || time < 0) {
|
||
return time
|
||
}
|
||
|
||
var hour = parseInt(time / 3600)
|
||
time = time % 3600
|
||
var minute = parseInt(time / 60)
|
||
time = time % 60
|
||
var second = time
|
||
|
||
return ([hour, minute, second]).map(function(n) {
|
||
n = n.toString()
|
||
return n[1] ? n : '0' + n
|
||
}).join(':')
|
||
}
|
||
|
||
function formatLocation(longitude, latitude) {
|
||
if (typeof longitude === 'string' && typeof latitude === 'string') {
|
||
longitude = parseFloat(longitude)
|
||
latitude = parseFloat(latitude)
|
||
}
|
||
|
||
longitude = longitude.toFixed(2)
|
||
latitude = latitude.toFixed(2)
|
||
|
||
return {
|
||
longitude: longitude.toString().split('.'),
|
||
latitude: latitude.toString().split('.')
|
||
}
|
||
}
|
||
|
||
var dateUtils = {
|
||
UNITS: {
|
||
'年': 31557600000,
|
||
'月': 2629800000,
|
||
'天': 86400000,
|
||
'小时': 3600000,
|
||
'分钟': 60000,
|
||
'秒': 1000
|
||
},
|
||
humanize: function(milliseconds) {
|
||
var humanize = '';
|
||
for (var key in this.UNITS) {
|
||
if (milliseconds >= this.UNITS[key]) {
|
||
humanize = Math.floor(milliseconds / this.UNITS[key]) + key + '前';
|
||
break;
|
||
}
|
||
}
|
||
return humanize || '刚刚';
|
||
},
|
||
format: function(dateStr) {
|
||
var date = this.parse(dateStr)
|
||
var diff = Date.now() - date.getTime();
|
||
if (diff < this.UNITS['天']) {
|
||
return this.humanize(diff);
|
||
}
|
||
var _format = function(number) {
|
||
return (number < 10 ? ('0' + number) : number);
|
||
};
|
||
return date.getFullYear() + '/' + _format(date.getMonth() + 1) + '/' + _format(date.getDate()) + '-' +
|
||
_format(date.getHours()) + ':' + _format(date.getMinutes());
|
||
},
|
||
parse: function(str) { //将"yyyy-mm-dd HH:MM:ss"格式的字符串,转化为一个Date对象
|
||
var a = str.split(/[^0-9]/);
|
||
return new Date(a[0], a[1] - 1, a[2], a[3], a[4], a[5]);
|
||
}
|
||
};
|
||
|
||
|
||
/**
|
||
* 判断 字符串 是否为空
|
||
* @param e
|
||
* @returns {boolean}
|
||
*/
|
||
function stringIsNotEmpty(e){
|
||
if (e === null || e === undefined || e === '') {
|
||
return false;
|
||
}
|
||
return true;
|
||
}
|
||
|
||
/**
|
||
* 判断数组 是覅为空,
|
||
* @param array
|
||
* @returns {boolean} true:不为空,false:为空
|
||
*/
|
||
function arrayIsNotEmpty(array){
|
||
if (array === undefined || array.length === 0) {
|
||
return false;
|
||
}
|
||
return array.length !== 0;
|
||
}
|
||
|
||
/**
|
||
* 缩写年份
|
||
* @param year 完整的年份 //2023,2022,2021....
|
||
* @returns {string} //23,22,21....
|
||
*/
|
||
function yearAbridge(year){
|
||
if ('2020' === year) {
|
||
return '20'
|
||
}else if('2021' === year){
|
||
return '21'
|
||
}else if('2022' === year){
|
||
return '22'
|
||
}else if('2023' === year){
|
||
return '23'
|
||
}else if('2024' === year){
|
||
return '24'
|
||
}else if('2025' === year) {
|
||
return '25'
|
||
}else if('2026' === year){
|
||
return '26'
|
||
}
|
||
return '未知'
|
||
}
|
||
|
||
export {
|
||
formatTime,
|
||
formatLocation,
|
||
dateUtils,
|
||
arrayIsNotEmpty,
|
||
stringIsNotEmpty,
|
||
yearAbridge
|
||
}
|