UNPKG

febs

Version:

febs is a useful utilities set

174 lines (142 loc) 4.39 kB
'use strict'; /** * Copyright (c) 2017 Copyright brainpoint All Rights Reserved. * Author: lipengxiang * Desc: */ var utils = require('../common/utils'); var utilsBrowser = require('../common/utils.browser'); /** * @desc: 模拟sleep. * @return: Promise. * 在ms时间后执行. * @e.g. * febs.utils.sleep(1000).then(()=>{ //1000ms之后resolve. }); */ exports.sleep = utils.sleep; /** * @desc: 获取时间的string. * @param time: ms. * @param fmt: 格式化, 默认为 'HH:mm:ss' * 年(y)、月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q) * 'yyyy-MM-dd hh:mm:ss.S' ==> 2006-07-02 08:09:04.423 * 'yyyy-MM-dd E HH:mm:ss' ==> 2009-03-10 星期二 20:09:04 * 'yyyy-M-d h:m:s.S' ==> 2006-7-2 8:9:4.18 * @param weekFmt: 星期的文字格式, 默认为 {'0':'星期天', '1': '星期一', ..., '6':'星期六'} * @return: string. */ exports.getTimeString = utils.getTimeString; /** * @desc: 获取指定时间距离现在的时间描述. * 例如, 昨天, 1小时前等. * @param time: ms. 小于当前时间, 大于当前时间将显示为 '刚刚'; * @param strFmt: 需要显示的文字. * 默认为 { * now: '刚刚', // 3秒钟以内将显示此信息. * second: '秒前', * minute: '分钟前', * hour: '小时前', * day_yesterday: '昨天', * day: '天前', * month: '个月前', // 6个月内将显示此信息. * time: 'yyyy-M-d h:m:s' // 超过6个月将使用此格式格式化时间 * } * @return: string. */ exports.getTimeStringFromNow = utils.getTimeStringFromNow; /** * @desc: getDate('2012-05-09') * @return: Date. */ exports.getDate = utils.getDate; /** * @desc: getDate2('20120509') * @return: Date. */ exports.getDate2 = utils.getDate2; /** * @desc: 合并多个map. * @return: {} */ exports.mergeMap = utils.mergeMap; /** * @desc: 判断参数是否是null,undefined,NaN * @return: boolean */ exports.isNull = utils.isNull; /** * @desc: 创建promise,但函数中的this可以为指定值. * 例如: yield denodeify(fs.exists)(path); * @param self: 指定的对象.s * @return: promise. */ exports.denodeify = utils.denodeify; exports.promisify = utils.promisify; /** * @desc: 判断是否是ie. */ exports.browserIsIE = utilsBrowser.browserIsIE; /** * @desc: 判断ie版本号. * @return number. 非ie返回Number.MAX_SAFE_INTEGER. * 如果是 edge 返回 'edge' */ exports.browserIEVer = utilsBrowser.browserIEVer; /** * @desc: the browser is support html5. */ exports.browserIsSupportHtml5 = utilsBrowser.browserIsSupportHtml5; /** * @desc: the browser is mobile. * @param userAgent: the browser user agent string. */ exports.browserIsMobile = utilsBrowser.browserIsMobile; /** * @desc: the browser is ios. * @param userAgent: the browser user agent string. */ exports.browserIsIOS = utilsBrowser.browserIsIOS; /** * @desc: the browser is phone. * @param userAgent: the browser user agent string. */ exports.browserIsPhone = utilsBrowser.browserIsPhone; /** * @desc: the browser is safari. * @param userAgent: the browser user agent string. */ exports.browserIsSafari = utilsBrowser.browserIsSafari; /** * @desc: the browser is opera. * @param userAgent: the browser user agent string. */ exports.browserIsOpera = utilsBrowser.browserIsOpera; /** * @desc: the browser is firefox. * @param userAgent: the browser user agent string. */ exports.browserIsFirefox = utilsBrowser.browserIsFirefox; /** * @desc: the browser is chrome. * @param userAgent: the browser user agent string. */ exports.browserIsChrome = utilsBrowser.browserIsChrome; /** * @desc: the browser is Edge. * @param userAgent: the browser user agent string. */ exports.browserIsEdge = utilsBrowser.browserIsEdge; /** * @desc: the browser is weixin. */ exports.browserIsWeixin = utilsBrowser.browserIsWeixin; /** * @desc: the platform is Windows. */ exports.platformIsWin = utilsBrowser.platformIsWin; /** * @desc: the platform is Mac. */ exports.platformIsMac = utilsBrowser.platformIsMac;