Comparing version 1.5.22 to 1.5.23
/** | ||
* xe-utils.js v1.5.22 | ||
* xe-utils.js v1.5.23 | ||
* (c) 2017-2018 Xu Liangzhan | ||
@@ -16,3 +16,3 @@ * ISC License. | ||
XEUtils.version = '1.5.22' | ||
XEUtils.version = '1.5.23' | ||
@@ -1169,4 +1169,4 @@ /** | ||
function getWhatWeek (date, week, mode) { | ||
var customDay = Number(/^[0-7]$/.test(mode) ? mode : 0) | ||
var currentDate = stringToDate(date) | ||
var customDay = Number(/^[0-7]$/.test(mode) ? mode : currentDate.getDay()) | ||
var currentDay = currentDate.getDay() | ||
@@ -1225,5 +1225,3 @@ var time = currentDate.getTime() | ||
if (index === len - 1) { | ||
if (diffTime) { | ||
result[item[0]] = diffTime | ||
} | ||
result[item[0]] = diffTime || 0 | ||
} else { | ||
@@ -1233,2 +1231,4 @@ result[item[0]] = Math.floor(diffTime / item[1]) | ||
} | ||
} else { | ||
result[item[0]] = 0 | ||
} | ||
@@ -1314,3 +1314,3 @@ } | ||
parsed.origin = parsed.protocol + '//' + parsed.host | ||
parsed.hashKey = hashs ? hashs[2] : '' | ||
parsed.hashKey = hashs ? (hashs[2] || '') : '' | ||
parsed.hashQuery = parseParams(parsed.hash) | ||
@@ -1317,0 +1317,0 @@ parsed.searchQuery = parseParams(parsed.search) |
/** | ||
* xe-utils.js v1.5.22 | ||
* xe-utils.js v1.5.23 | ||
* (c) 2017-2018 Xu Liangzhan | ||
@@ -7,2 +7,2 @@ * ISC License. | ||
*/ | ||
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):n.XEUtils=t()}(this,function(){"use strict";function n(){}function t(n){var t=[];return en.isArray(n)&&en.arrayEach(n,function(n){t.includes(n)||t.push(n)}),t}function e(){for(var n=[],e=0,r=arguments.length;e<r;e++)n=n.concat(arguments[e]);return t(n)}function r(n,t,e){return en.isArray(n)?n.sort(t?en.isFunction(t)?t.bind(e||this):function(n,e){return n[t]>e[t]?1:-1}:function(n,t){return n>t?1:-1}):n}function i(n){for(var t=[],e=en.objectValues(n),r=e.length-1;r>=0;r--){var i=r>0?pn.getRandom(0,r):0;t.push(e[i]),e.splice(i,1)}return t}function o(n,t){var e=i(n);return 1===arguments.length?e[0]:(t<e.length&&(e.length=t||0),e)}function u(n,t,e){if(n){if(en.isArray(n))return n.some(t,e||this);for(var r in n)if(n.hasOwnProperty(r)&&t.call(e||this,n[r],r,n))return!0}return!1}function a(n,t,e){if(n){if(en.isArray(n))return n.every(t,e||this);for(var r in n)if(n.hasOwnProperty(r)&&!t.call(e||this,n[r],r,n))return!1}return!0}function s(n,t,e){if(n){if(en.isArray(n))return n.filter(t,e||this);var r={};return en.each(n,function(i,o){t.call(e||this,i,o,n)&&(r[o]=i)}),r}return[]}function c(n,t,e){if(n){if(en.isArray(n))return n.find(t,e||this);for(var r in n)if(n.hasOwnProperty(r)&&t.call(e||this,n[r],r,n))return n[r]}}function f(n,t,e){var r=[];if(n){if(en.isArray(n))return n.map(t,e||this);en.each(n,function(){r.push(t.apply(e||this,arguments))})}return r}function l(n){return"function"==typeof n}function h(n){return"string"==typeof n}function y(n){return"number"==typeof n}function p(n){return"object"==typeof n}function g(n){return!!n&&n.constructor===Object}function d(n){return"[object Date]"===B.call(n)}function m(n){return"undefined"!=typeof Symbol&&Symbol.isSymbol?Symbol.isSymbol(n):"symbol"==typeof n}function v(n){return function(t,e){if(t){if(h(t)||z(t))return n(t,e);for(var r in t)if(e===t[r])return r}return-1}}function b(n,t){return-1!==L(n,t)}function S(n,t,e){for(var r,i=1,o=t.length;i<o;i++)r=t[i],E(j(t[i]),function(t){n[t]=e?F(r[t],e):r[t]});return n}function j(n){var t=[];if(n){if(Object.keys)return Object.keys(n);w(n,function(n,e){t.push(e)})}return t}function M(n){if(Object.values)return n?Object.values(n):[];var t=[];return E(j(n),function(e){t.push(n[e])}),t}function O(n){if(Object.entries)return n?Object.entries(n):[];var t=[];return E(j(n),function(e){t.push([e,n[e]])}),t}function x(n){return M(n)[0]}function D(n){var t=M(n);return t[t.length-1]}function w(n,t,e){for(var r in n)n.hasOwnProperty(r)&&t.call(e||this,n[r],r,n)}function E(n,t,e){for(var r=0,i=n.length||0;r<i;r++)t.call(e||this,n[r],r,n)}function N(n,t,e){return n?z(n)?l(n.forEach)?n.forEach(t,e||this):E(n,t,e||this):w(n,t,e||this):n}function A(t){return g(t)?function(n){var t={};return N(n,function(n,e){t[e]=A(n)}),t}(t):z(t)?function(t){return n.arrayMap(t,A)}(t):t}function F(n,t){return n?t?A(n):X(g(n)?{}:[],n):n}function T(n,t,e){var r=[],i="undefined"!=typeof document;if(this&&this.$context&&(this.$context=null),en.isArray(n)?r=n:arguments.length>1?r=[en.objectAssign({name:n,value:t},e)]:en.isObject(n)&&(r=[n]),!(r.length>0)){var o={};return i&&document.cookie&&en.arrayEach(document.cookie.split("; "),function(n){var t=n.indexOf("=");o[on(n.substring(0,t))]=on(n.substring(t+1)||"")}),1===arguments.length?o[n]:o}i&&en.arrayEach(r,function(n){var t=en.objectAssign({},n),e=[];t.name&&(e.push(un(t.name)+"="+un(en.isObject(t.value)?JSON.stringify(t.value):t.value)),void 0!==t.expires&&(t.expires=new Date((new Date).getTime()+864e5*parseFloat(t.expires)).toUTCString()),en.arrayEach(["expires","path","domain","secure"],function(n){void 0!==t[n]&&e.push(n+"="+t[n])})),document.cookie=e.join("; ")})}function I(n,t){if(n){if(en.isDate(n))return n;if(!isNaN(n))return new Date(n);if(en.isString(n)){t=t||"yyyy-MM-dd HH:mm:ss.SSS";var e=[];return en.arrayEach(cn,function(r){for(var i,o,u=0,a=r.rules,s=a.length;u<s;u++){if(i=a[u],(o=t.indexOf(i[0]))>-1){e.push(parseFloat(n.substring(o,o+i[1])||0)+(r.offset||0));break}u===s-1&&e.push(0)}}),new Date(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}}return"Invalid Date"}function k(n,t,e){var r=I(n),i=t&&!isNaN(t)?t:0,o=r.getHours(),u=r.getMinutes(),a=r.getSeconds(),s=r.getMilliseconds();if("first"===e){var c=r.getFullYear(),f=r.getMonth();return(f+=i)<0?new Date(c-Math.ceil((f=Math.abs(f))/12),12-(f%12||1),1,o,u,a,s):new Date(c+Math.floor(f/12),f%12,1,o,u,a,s)}if("last"===e)return new Date(k(r,i+1,"first").getTime()-864e5);var l=r.getDate(),h=k(r,i,"first"),y=h.getMonth();for(h.setDate(l);y<h.getMonth();)h.setDate(--l);return h}function H(n){var t={},e=n.split("?")[1]||"";return e&&en.arrayEach(e.split("&"),function(n){var e=n.split("=");t[decodeURIComponent(e[0])]=decodeURIComponent(e[1]||"")}),t}function P(){return hn?hn.origin||hn.protocol+"//"+hn.host:""}function R(n){var t=""+n;0===t.indexOf("/")&&(t=P()+t);var e=t.replace(/#.*/,"").match(/(\?.*)/),r={href:t,hash:"",host:"",hostname:"",protocol:"",port:"",search:e?e[1]:""};r.path=t.replace(/^([a-z0-9.+-]*:)\/\//,function(n,t){return r.protocol=t,""}).replace(/^([a-z0-9.+-]*)(:\d+)?\//,function(n,t,e){var i=e||"";return r.port=i.replace(":",""),r.hostname=t,r.host=t+i,"/"}).replace(/(#.*)/,function(n,t){return r.hash=t,""});var i=r.hash.match(/#((.*)\?|(.*))/);return r.pathname=r.path.replace(/(\?|#.*).*/,""),r.origin=r.protocol+"//"+r.host,r.hashKey=i?i[2]:"",r.hashQuery=H(r.hash),r.searchQuery=H(r.search),r}function U(n,t){return en.isFunction(t)?$.arraySort($.arrayMap(n,t,this)):$.arraySort(n,t)}function C(){return U.apply(this,arguments)[0]}function q(){return U.apply(this,arguments).reverse()[0]}function J(n){if(n){var t=parseFloat(n);return isNaN(t)?0:t}return 0}function W(n){var t=new RegExp("(?:"+en.objectKeys(n).join("|")+")","g");return function(e){return String(e||"").replace(t,function(t){return n[t]})}}n.version="1.5.22";var $={arrayUniq:t,uniq:t,arrayUnion:e,union:e,arraySort:r,sort:r,arrayShuffle:i,shuffle:i,arraySample:o,sample:o,arraySome:u,some:u,arrayEvery:a,every:a,arrayFilter:s,filter:s,arrayFind:c,find:c,arrayMap:f,map:f},B=Object.prototype.toString,z=Array.isArray||function(n){return"[object Array]"===B.call(n)},K=Number.isInteger,Y=0,L=v(function(n,t){if(n.indexOf)return n.indexOf(t);for(var e=0,r=n.length;e<r;e++)if(t===n[e])return e}),Q=v(function(n,t){if(n.lastIndexOf)return n.lastIndexOf(t);for(var e=n.length-1;e>=0;e--)if(t===n[e])return e;return-1}),V=b,X=function(n){if(n){var t=arguments;if(!0!==n)return Object.assign?Object.assign.apply(Object,t):S(n,t);if(t.length>1)return n=z(n[1])?[]:{},S(n,t,!0)}return n},G=j,Z=M,_=O,nn=x,tn=D,en={isNaN:isNaN,isFinite:isFinite,isArray:z,isFloat:function(n){return null!==n&&!isNaN(n)&&!K(n)},isInteger:K,isFunction:l,isBoolean:function(n){return"boolean"==typeof n},isString:h,isNumber:y,isRegExp:function(n){return"[object RegExp]"===B.call(n)},isObject:p,isPlainObject:g,isDate:d,isError:function(n){return"[object Error]"===B.call(n)},isTypeError:function(n){return!!n&&n.constructor===TypeError},isEmpty:function(n){if(0===n||!y(n)){for(var t in n)return!1;return!0}return!1},isNull:function(n){return null===n},isSymbol:m,isArguments:function(n){return"[object Arguments]"===B.call(n)},isElement:function(n){return n&&h(n.nodeName)&&y(n.nodeType)},isDocument:function(n){return n&&9===n.nodeType&&"undefined"!=typeof document},isWindow:function(n){return n&&n===n.window&&"undefined"!=typeof window},isFormData:function(n){return"undefined"!=typeof FormData&&n instanceof FormData},isLeapYear:function(t){var e=(t?n.stringToDate(t):new Date).getFullYear();return e%4==0&&(e%100!=0||e%400==0)},getType:function(n){return null===n?""+n:m(n)?"symbol":d(n)?"date":z(n)?"array":typeof n},uniqueId:function(){return++Y},getSize:function(n){var t=0;return h(n)||z(n)?n.length:(N(n,function(){t++}),t)},lastIndexOf:Q,includes:b,contains:V,objectAssign:X,assign:X,extend:X,stringToJson:function(n){if(p(n))return n;if(h(n))try{return JSON.parse(n)}catch(n){console.error(n)}return{}},jsonToString:function(n){if(p(n))try{return JSON.stringify(n)}catch(n){console.error(n)}return n?""+n:""},objectKeys:j,keys:G,objectValues:M,values:Z,objectEntries:O,entries:_,arrayFirst:x,first:nn,arrayLast:D,last:tn,objectEach:w,arrayEach:E,each:N,groupBy:function(n,t,e){var r,i,o={};return n&&(h(t)?(i=t,t=null):t=l(t)?t.bind(e||this):i=null,N(n,function(e,u){r=t?t(e,u,n):i?e[i]:e,o[r]?o[r].push(e):o[r]=[e]})),o},objectMap:function(n,t,e){var r={};return N(n,function(i,o){r[o]=t.call(e||this,i,o,n)}),r},clone:F},rn={browse:function(){var n={isNode:!1,isMobile:!1,isPC:!1};if("undefined"==typeof window&&"undefined"!=typeof process)n.nodeJS=!0;else if(n.isMobile=function(){for(var n=["Android","webOS","iPhone","iPad","iPod","SymbianOS","BlackBerry","Windows Phone"],t=navigator.userAgent,e=0;e<n.length;e++)if(t.indexOf(n[e])>0)return!0;return!1}(),n.isPC=!n.isMobile,"undefined"!=typeof document){var t=document.body||document.documentElement;en.arrayEach(["webkit","khtml","moz","ms","o"],function(e){n["-"+e]=!!t[e+"MatchesSelector"]})}return n}},on=decodeURIComponent,un=encodeURIComponent;en.objectAssign(T,{setItem:function(n,t){T(n,t)},getItem:function(n){return T(n)},removeItem:function(n){T(n,null,{expires:-1})},getJSON:function(){return T()}});var an={cookie:T},sn=Date.now||function(){return(new Date).getTime()},cn=[{rules:[["yyyy",4],["yyy",3],["yy",2]]},{rules:[["MM",2],["M",1]],offset:-1},{rules:[["dd",2],["d",1]]},{rules:[["HH",2],["H",1]]},{rules:[["mm",2],["m",1]]},{rules:[["ss",2],["s",1]]},{rules:[["SSS",3],["SS",2],["S",1]]}],fn=[["yyyy",31536e6],["MM",2592e6],["dd",864e5],["HH",36e5],["mm",6e4],["ss",1e3],["S",0]],ln={timestamp:sn,now:sn,stringToDate:I,dateToString:function(n,t){if(n){if(n=I(n),en.isDate(n)){var e=["日","一","二","三","四","五","六"],r={"q+":Math.floor((n.getMonth()+3)/3),"M+":n.getMonth()+1,"E+":n.getDay(),"d+":n.getDate(),"H+":n.getHours(),"m+":n.getMinutes(),"s+":n.getSeconds(),S:n.getMilliseconds()},i=String(t||"yyyy-MM-dd HH:mm:ss").replace(/(y+)/,function(t){return(""+n.getFullYear()).substr(4-t.length)});for(var o in r)if(r.hasOwnProperty(o)){var u=""+r[o];i=i.replace(new RegExp("("+o+")"),function(n){return"q+"===o||"E+"===o?e[u]:1===n.length?u:("00"+u).substr(u.length)})}return i}return n}return""},getWhatMonth:k,getWhatWeek:function(n,t,e){var r=Number(/^[0-7]$/.test(e)?e:0),i=I(n),o=i.getDay(),u=i.getTime()+864e5*((0===r?7:r)-(0===o?7:o));return t&&!isNaN(t)&&(u+=6048e5*t),new Date(u)},getWhatDay:function(n,t){return new Date(I(n).getTime()+(t&&!isNaN(t)?864e5*t:0))},getDaysOfMonth:function(n,t){return Math.floor((k(n,t,"last").getTime()-k(n,t,"first").getTime())/864e5)+1},getDateDiff:function(n,t,e){var r={},i=I(n).getTime(),o=t?I(t).getTime():new Date;if(i<o)for(var u,a=o-i,s=e&&e.length>0?e:fn,c=0,f=s.length;c<f;c++)a>=(u=s[c])[1]&&(c===f-1?a&&(r[u[0]]=a):(r[u[0]]=Math.floor(a/u[1]),a-=r[u[0]]*u[1]));return r}},hn=null;"undefined"!=typeof location&&(hn=location);var yn={parseUrl:R,getBaseURL:function(){if(hn){var n=hn.pathname,t=en.lastIndexOf(n,"/")+1;return P()+(t===n.length?n:n.substring(0,t))}return""},locat:function(){return hn?R(hn.href):{}}},pn={getRandom:function(n,t){return n>=t?n:(n>>=0)+Math.round(Math.random()*((t||9)-n))},arrayMin:C,min:C,arrayMax:q,max:q,commafy:function(n,t){var e=en.objectAssign({spaceNumber:3,separator:",",fixed:0},t),r=parseFloat((""+n).replace(/,/g,"")||0).toFixed(e.fixed).split(".");return r[0].replace(new RegExp("(?=(?!(\\b))(\\d{"+e.spaceNumber+"})+$)","g"),e.separator)+(r[1]?"."+r[1]:"")},toNumber:J,stringToNumber:J},gn={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},dn={};en.arrayEach(en.objectKeys(gn),function(n){dn[gn[n]]=n});var mn={escape:W(gn),unescape:W(dn)},vn={};return en.objectAssign(vn,$,en,rn,an,ln,yn,pn,mn),n.mixin=function(t){vn.objectEach(t,function(t,e){n[e]=-1==="cookie".indexOf(e)&&vn.isFunction(t)?function(){var e=t.apply(n.$context,arguments);return n.$context=null,e}:t})},n.mixin(vn),n}); | ||
!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):n.XEUtils=t()}(this,function(){"use strict";function n(){}function t(n){var t=[];return en.isArray(n)&&en.arrayEach(n,function(n){t.includes(n)||t.push(n)}),t}function e(){for(var n=[],e=0,r=arguments.length;e<r;e++)n=n.concat(arguments[e]);return t(n)}function r(n,t,e){return en.isArray(n)?n.sort(t?en.isFunction(t)?t.bind(e||this):function(n,e){return n[t]>e[t]?1:-1}:function(n,t){return n>t?1:-1}):n}function i(n){for(var t=[],e=en.objectValues(n),r=e.length-1;r>=0;r--){var i=r>0?pn.getRandom(0,r):0;t.push(e[i]),e.splice(i,1)}return t}function o(n,t){var e=i(n);return 1===arguments.length?e[0]:(t<e.length&&(e.length=t||0),e)}function u(n,t,e){if(n){if(en.isArray(n))return n.some(t,e||this);for(var r in n)if(n.hasOwnProperty(r)&&t.call(e||this,n[r],r,n))return!0}return!1}function a(n,t,e){if(n){if(en.isArray(n))return n.every(t,e||this);for(var r in n)if(n.hasOwnProperty(r)&&!t.call(e||this,n[r],r,n))return!1}return!0}function s(n,t,e){if(n){if(en.isArray(n))return n.filter(t,e||this);var r={};return en.each(n,function(i,o){t.call(e||this,i,o,n)&&(r[o]=i)}),r}return[]}function c(n,t,e){if(n){if(en.isArray(n))return n.find(t,e||this);for(var r in n)if(n.hasOwnProperty(r)&&t.call(e||this,n[r],r,n))return n[r]}}function f(n,t,e){var r=[];if(n){if(en.isArray(n))return n.map(t,e||this);en.each(n,function(){r.push(t.apply(e||this,arguments))})}return r}function l(n){return"function"==typeof n}function h(n){return"string"==typeof n}function y(n){return"number"==typeof n}function p(n){return"object"==typeof n}function g(n){return!!n&&n.constructor===Object}function d(n){return"[object Date]"===B.call(n)}function m(n){return"undefined"!=typeof Symbol&&Symbol.isSymbol?Symbol.isSymbol(n):"symbol"==typeof n}function v(n){return function(t,e){if(t){if(h(t)||z(t))return n(t,e);for(var r in t)if(e===t[r])return r}return-1}}function b(n,t){return-1!==L(n,t)}function S(n,t,e){for(var r,i=1,o=t.length;i<o;i++)r=t[i],E(j(t[i]),function(t){n[t]=e?F(r[t],e):r[t]});return n}function j(n){var t=[];if(n){if(Object.keys)return Object.keys(n);w(n,function(n,e){t.push(e)})}return t}function M(n){if(Object.values)return n?Object.values(n):[];var t=[];return E(j(n),function(e){t.push(n[e])}),t}function O(n){if(Object.entries)return n?Object.entries(n):[];var t=[];return E(j(n),function(e){t.push([e,n[e]])}),t}function x(n){return M(n)[0]}function D(n){var t=M(n);return t[t.length-1]}function w(n,t,e){for(var r in n)n.hasOwnProperty(r)&&t.call(e||this,n[r],r,n)}function E(n,t,e){for(var r=0,i=n.length||0;r<i;r++)t.call(e||this,n[r],r,n)}function N(n,t,e){return n?z(n)?l(n.forEach)?n.forEach(t,e||this):E(n,t,e||this):w(n,t,e||this):n}function A(t){return g(t)?function(n){var t={};return N(n,function(n,e){t[e]=A(n)}),t}(t):z(t)?function(t){return n.arrayMap(t,A)}(t):t}function F(n,t){return n?t?A(n):X(g(n)?{}:[],n):n}function T(n,t,e){var r=[],i="undefined"!=typeof document;if(this&&this.$context&&(this.$context=null),en.isArray(n)?r=n:arguments.length>1?r=[en.objectAssign({name:n,value:t},e)]:en.isObject(n)&&(r=[n]),!(r.length>0)){var o={};return i&&document.cookie&&en.arrayEach(document.cookie.split("; "),function(n){var t=n.indexOf("=");o[on(n.substring(0,t))]=on(n.substring(t+1)||"")}),1===arguments.length?o[n]:o}i&&en.arrayEach(r,function(n){var t=en.objectAssign({},n),e=[];t.name&&(e.push(un(t.name)+"="+un(en.isObject(t.value)?JSON.stringify(t.value):t.value)),void 0!==t.expires&&(t.expires=new Date((new Date).getTime()+864e5*parseFloat(t.expires)).toUTCString()),en.arrayEach(["expires","path","domain","secure"],function(n){void 0!==t[n]&&e.push(n+"="+t[n])})),document.cookie=e.join("; ")})}function I(n,t){if(n){if(en.isDate(n))return n;if(!isNaN(n))return new Date(n);if(en.isString(n)){t=t||"yyyy-MM-dd HH:mm:ss.SSS";var e=[];return en.arrayEach(cn,function(r){for(var i,o,u=0,a=r.rules,s=a.length;u<s;u++){if(i=a[u],(o=t.indexOf(i[0]))>-1){e.push(parseFloat(n.substring(o,o+i[1])||0)+(r.offset||0));break}u===s-1&&e.push(0)}}),new Date(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}}return"Invalid Date"}function k(n,t,e){var r=I(n),i=t&&!isNaN(t)?t:0,o=r.getHours(),u=r.getMinutes(),a=r.getSeconds(),s=r.getMilliseconds();if("first"===e){var c=r.getFullYear(),f=r.getMonth();return(f+=i)<0?new Date(c-Math.ceil((f=Math.abs(f))/12),12-(f%12||1),1,o,u,a,s):new Date(c+Math.floor(f/12),f%12,1,o,u,a,s)}if("last"===e)return new Date(k(r,i+1,"first").getTime()-864e5);var l=r.getDate(),h=k(r,i,"first"),y=h.getMonth();for(h.setDate(l);y<h.getMonth();)h.setDate(--l);return h}function H(n){var t={},e=n.split("?")[1]||"";return e&&en.arrayEach(e.split("&"),function(n){var e=n.split("=");t[decodeURIComponent(e[0])]=decodeURIComponent(e[1]||"")}),t}function P(){return hn?hn.origin||hn.protocol+"//"+hn.host:""}function R(n){var t=""+n;0===t.indexOf("/")&&(t=P()+t);var e=t.replace(/#.*/,"").match(/(\?.*)/),r={href:t,hash:"",host:"",hostname:"",protocol:"",port:"",search:e?e[1]:""};r.path=t.replace(/^([a-z0-9.+-]*:)\/\//,function(n,t){return r.protocol=t,""}).replace(/^([a-z0-9.+-]*)(:\d+)?\//,function(n,t,e){var i=e||"";return r.port=i.replace(":",""),r.hostname=t,r.host=t+i,"/"}).replace(/(#.*)/,function(n,t){return r.hash=t,""});var i=r.hash.match(/#((.*)\?|(.*))/);return r.pathname=r.path.replace(/(\?|#.*).*/,""),r.origin=r.protocol+"//"+r.host,r.hashKey=i?i[2]||"":"",r.hashQuery=H(r.hash),r.searchQuery=H(r.search),r}function U(n,t){return en.isFunction(t)?$.arraySort($.arrayMap(n,t,this)):$.arraySort(n,t)}function C(){return U.apply(this,arguments)[0]}function q(){return U.apply(this,arguments).reverse()[0]}function J(n){if(n){var t=parseFloat(n);return isNaN(t)?0:t}return 0}function W(n){var t=new RegExp("(?:"+en.objectKeys(n).join("|")+")","g");return function(e){return String(e||"").replace(t,function(t){return n[t]})}}n.version="1.5.23";var $={arrayUniq:t,uniq:t,arrayUnion:e,union:e,arraySort:r,sort:r,arrayShuffle:i,shuffle:i,arraySample:o,sample:o,arraySome:u,some:u,arrayEvery:a,every:a,arrayFilter:s,filter:s,arrayFind:c,find:c,arrayMap:f,map:f},B=Object.prototype.toString,z=Array.isArray||function(n){return"[object Array]"===B.call(n)},K=Number.isInteger,Y=0,L=v(function(n,t){if(n.indexOf)return n.indexOf(t);for(var e=0,r=n.length;e<r;e++)if(t===n[e])return e}),Q=v(function(n,t){if(n.lastIndexOf)return n.lastIndexOf(t);for(var e=n.length-1;e>=0;e--)if(t===n[e])return e;return-1}),V=b,X=function(n){if(n){var t=arguments;if(!0!==n)return Object.assign?Object.assign.apply(Object,t):S(n,t);if(t.length>1)return n=z(n[1])?[]:{},S(n,t,!0)}return n},G=j,Z=M,_=O,nn=x,tn=D,en={isNaN:isNaN,isFinite:isFinite,isArray:z,isFloat:function(n){return null!==n&&!isNaN(n)&&!K(n)},isInteger:K,isFunction:l,isBoolean:function(n){return"boolean"==typeof n},isString:h,isNumber:y,isRegExp:function(n){return"[object RegExp]"===B.call(n)},isObject:p,isPlainObject:g,isDate:d,isError:function(n){return"[object Error]"===B.call(n)},isTypeError:function(n){return!!n&&n.constructor===TypeError},isEmpty:function(n){if(0===n||!y(n)){for(var t in n)return!1;return!0}return!1},isNull:function(n){return null===n},isSymbol:m,isArguments:function(n){return"[object Arguments]"===B.call(n)},isElement:function(n){return n&&h(n.nodeName)&&y(n.nodeType)},isDocument:function(n){return n&&9===n.nodeType&&"undefined"!=typeof document},isWindow:function(n){return n&&n===n.window&&"undefined"!=typeof window},isFormData:function(n){return"undefined"!=typeof FormData&&n instanceof FormData},isLeapYear:function(t){var e=(t?n.stringToDate(t):new Date).getFullYear();return e%4==0&&(e%100!=0||e%400==0)},getType:function(n){return null===n?""+n:m(n)?"symbol":d(n)?"date":z(n)?"array":typeof n},uniqueId:function(){return++Y},getSize:function(n){var t=0;return h(n)||z(n)?n.length:(N(n,function(){t++}),t)},lastIndexOf:Q,includes:b,contains:V,objectAssign:X,assign:X,extend:X,stringToJson:function(n){if(p(n))return n;if(h(n))try{return JSON.parse(n)}catch(n){console.error(n)}return{}},jsonToString:function(n){if(p(n))try{return JSON.stringify(n)}catch(n){console.error(n)}return n?""+n:""},objectKeys:j,keys:G,objectValues:M,values:Z,objectEntries:O,entries:_,arrayFirst:x,first:nn,arrayLast:D,last:tn,objectEach:w,arrayEach:E,each:N,groupBy:function(n,t,e){var r,i,o={};return n&&(h(t)?(i=t,t=null):t=l(t)?t.bind(e||this):i=null,N(n,function(e,u){r=t?t(e,u,n):i?e[i]:e,o[r]?o[r].push(e):o[r]=[e]})),o},objectMap:function(n,t,e){var r={};return N(n,function(i,o){r[o]=t.call(e||this,i,o,n)}),r},clone:F},rn={browse:function(){var n={isNode:!1,isMobile:!1,isPC:!1};if("undefined"==typeof window&&"undefined"!=typeof process)n.nodeJS=!0;else if(n.isMobile=function(){for(var n=["Android","webOS","iPhone","iPad","iPod","SymbianOS","BlackBerry","Windows Phone"],t=navigator.userAgent,e=0;e<n.length;e++)if(t.indexOf(n[e])>0)return!0;return!1}(),n.isPC=!n.isMobile,"undefined"!=typeof document){var t=document.body||document.documentElement;en.arrayEach(["webkit","khtml","moz","ms","o"],function(e){n["-"+e]=!!t[e+"MatchesSelector"]})}return n}},on=decodeURIComponent,un=encodeURIComponent;en.objectAssign(T,{setItem:function(n,t){T(n,t)},getItem:function(n){return T(n)},removeItem:function(n){T(n,null,{expires:-1})},getJSON:function(){return T()}});var an={cookie:T},sn=Date.now||function(){return(new Date).getTime()},cn=[{rules:[["yyyy",4],["yyy",3],["yy",2]]},{rules:[["MM",2],["M",1]],offset:-1},{rules:[["dd",2],["d",1]]},{rules:[["HH",2],["H",1]]},{rules:[["mm",2],["m",1]]},{rules:[["ss",2],["s",1]]},{rules:[["SSS",3],["SS",2],["S",1]]}],fn=[["yyyy",31536e6],["MM",2592e6],["dd",864e5],["HH",36e5],["mm",6e4],["ss",1e3],["S",0]],ln={timestamp:sn,now:sn,stringToDate:I,dateToString:function(n,t){if(n){if(n=I(n),en.isDate(n)){var e=["日","一","二","三","四","五","六"],r={"q+":Math.floor((n.getMonth()+3)/3),"M+":n.getMonth()+1,"E+":n.getDay(),"d+":n.getDate(),"H+":n.getHours(),"m+":n.getMinutes(),"s+":n.getSeconds(),S:n.getMilliseconds()},i=String(t||"yyyy-MM-dd HH:mm:ss").replace(/(y+)/,function(t){return(""+n.getFullYear()).substr(4-t.length)});for(var o in r)if(r.hasOwnProperty(o)){var u=""+r[o];i=i.replace(new RegExp("("+o+")"),function(n){return"q+"===o||"E+"===o?e[u]:1===n.length?u:("00"+u).substr(u.length)})}return i}return n}return""},getWhatMonth:k,getWhatWeek:function(n,t,e){var r=I(n),i=Number(/^[0-7]$/.test(e)?e:r.getDay()),o=r.getDay(),u=r.getTime()+864e5*((0===i?7:i)-(0===o?7:o));return t&&!isNaN(t)&&(u+=6048e5*t),new Date(u)},getWhatDay:function(n,t){return new Date(I(n).getTime()+(t&&!isNaN(t)?864e5*t:0))},getDaysOfMonth:function(n,t){return Math.floor((k(n,t,"last").getTime()-k(n,t,"first").getTime())/864e5)+1},getDateDiff:function(n,t,e){var r={},i=I(n).getTime(),o=t?I(t).getTime():new Date;if(i<o)for(var u,a=o-i,s=e&&e.length>0?e:fn,c=0,f=s.length;c<f;c++)a>=(u=s[c])[1]?c===f-1?r[u[0]]=a||0:(r[u[0]]=Math.floor(a/u[1]),a-=r[u[0]]*u[1]):r[u[0]]=0;return r}},hn=null;"undefined"!=typeof location&&(hn=location);var yn={parseUrl:R,getBaseURL:function(){if(hn){var n=hn.pathname,t=en.lastIndexOf(n,"/")+1;return P()+(t===n.length?n:n.substring(0,t))}return""},locat:function(){return hn?R(hn.href):{}}},pn={getRandom:function(n,t){return n>=t?n:(n>>=0)+Math.round(Math.random()*((t||9)-n))},arrayMin:C,min:C,arrayMax:q,max:q,commafy:function(n,t){var e=en.objectAssign({spaceNumber:3,separator:",",fixed:0},t),r=parseFloat((""+n).replace(/,/g,"")||0).toFixed(e.fixed).split(".");return r[0].replace(new RegExp("(?=(?!(\\b))(\\d{"+e.spaceNumber+"})+$)","g"),e.separator)+(r[1]?"."+r[1]:"")},toNumber:J,stringToNumber:J},gn={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`"},dn={};en.arrayEach(en.objectKeys(gn),function(n){dn[gn[n]]=n});var mn={escape:W(gn),unescape:W(dn)},vn={};return en.objectAssign(vn,$,en,rn,an,ln,yn,pn,mn),n.mixin=function(t){vn.objectEach(t,function(t,e){n[e]=-1==="cookie".indexOf(e)&&vn.isFunction(t)?function(){var e=t.apply(n.$context,arguments);return n.$context=null,e}:t})},n.mixin(vn),n}); |
{ | ||
"name": "xe-utils", | ||
"version": "1.5.22", | ||
"version": "1.5.23", | ||
"description": "XEUtils 函数库", | ||
@@ -5,0 +5,0 @@ "main": "index.js", |
@@ -583,3 +583,3 @@ # XEUtils 函数库 | ||
``` | ||
### getDateDiff ( startDate, endDate, rules ) 返回两个日期之间差距 | ||
### getDateDiff ( startDate, endDate, rules ) 返回两个日期之间差距,如果结束日期小于开始日期done为fasle | ||
```shell | ||
@@ -591,2 +591,3 @@ import XEUtils from 'xe-utils' | ||
XEUtils.getDateDiff('2017-12-20', '2017-12-21') // {dd: 1, ss: 30} | ||
XEUtils.getDateDiff('2018-01-01', '2017-12-21') // {done: false} | ||
const dateDiff = XEUtils.getDateDiff('2017-12-20 10:10:30', '2017-12-21 10:15:00') | ||
@@ -593,0 +594,0 @@ const content = `${dateDiff.mm}分${dateDiff.ss}秒` // '4分30秒' |
@@ -5,4 +5,4 @@ 'use strict' | ||
XEUtils.version = '1.5.22' | ||
XEUtils.version = '1.5.23' | ||
module.exports = XEUtils |
@@ -145,4 +145,4 @@ 'use strict' | ||
function getWhatWeek (date, week, mode) { | ||
var customDay = Number(/^[0-7]$/.test(mode) ? mode : 0) | ||
var currentDate = stringToDate(date) | ||
var customDay = Number(/^[0-7]$/.test(mode) ? mode : currentDate.getDay()) | ||
var currentDay = currentDate.getDay() | ||
@@ -182,3 +182,3 @@ var time = currentDate.getTime() | ||
/** | ||
* 返回两个日期之间差距 | ||
* 返回两个日期之间差距,如果结束日期小于开始日期done为fasle | ||
* | ||
@@ -191,3 +191,3 @@ * @param {Date} startDate 开始日期 | ||
function getDateDiff (startDate, endDate, rules) { | ||
var result = {} | ||
var result = {done: false} | ||
var startTime = stringToDate(startDate).getTime() | ||
@@ -199,2 +199,3 @@ var endTime = endDate ? stringToDate(endDate).getTime() : new Date() | ||
var rule = rules && rules.length > 0 ? rules : dateDiffRules | ||
result.done = true | ||
for (var index = 0, len = rule.length; index < len; index++) { | ||
@@ -204,5 +205,3 @@ item = rule[index] | ||
if (index === len - 1) { | ||
if (diffTime) { | ||
result[item[0]] = diffTime | ||
} | ||
result[item[0]] = diffTime || 0 | ||
} else { | ||
@@ -212,2 +211,4 @@ result[item[0]] = Math.floor(diffTime / item[1]) | ||
} | ||
} else { | ||
result[item[0]] = 0 | ||
} | ||
@@ -214,0 +215,0 @@ } |
@@ -67,3 +67,3 @@ 'use strict' | ||
parsed.origin = parsed.protocol + '//' + parsed.host | ||
parsed.hashKey = hashs ? hashs[2] : '' | ||
parsed.hashKey = hashs ? (hashs[2] || '') : '' | ||
parsed.hashQuery = parseParams(parsed.hash) | ||
@@ -70,0 +70,0 @@ parsed.searchQuery = parseParams(parsed.search) |
112813
2787
725