1、时间戳转为格式化时间

/**
* 时间戳转为格式化时间
* @Author chenjun
* @DateTime 2017-11-10
* @param {[date]} timestamp [时间戳]
* @param {[string]} formats [时间格式]
*/
function formatDate(timestamp, formats) {
/*
formats格式包括
1. Y-M-D
2. Y-M-D h:m:s
3. Y年M月D日
4. Y年M月D日 h时m分
5. Y年M月D日 h时m分s秒
示例:console.log(formatDate(1500305226034, 'Y年M月D日 h:m:s')) ==> 2017年07月17日 23:27:06
*/
formats = formats || 'Y-M-D'; var myDate = timestamp ? new Date(timestamp) : new Date(); var year = myDate.getFullYear();
var month = formatDigit(myDate.getMonth() + 1);
var day = formatDigit(myDate.getDate()); var hour = formatDigit(myDate.getHours());
var minute = formatDigit(myDate.getMinutes());
var second = formatDigit(myDate.getSeconds()); return formats.replace(/Y|M|D|h|m|s/g, function(matches) {
return ({
Y: year,
M: month,
D: day,
h: hour,
m: minute,
s: second
})[matches];
});
// 小于10补0
function formatDigit(n) {
return n.toString().replace(/^(\d)$/, '0$1');
};
}

2、千分位显示,常用于价格显示:

// 千分位
function toThousands(num) {
return parseFloat(num).toFixed(2).replace(/(\d{1,3})(?=(\d{3})+(?:\.))/g, "$1,");
}

3、超出显示省略号

// 超出显示省略号
function cutString(str, len) {
//length属性读出来的汉字长度为1
if (str.length * 2 <= len) {
return str;
}
var strlen = 0;
var s = "";
for (var i = 0; i < str.length; i++) {
s = s + str.charAt(i);
if (str.charCodeAt(i) > 128) {
strlen = strlen + 2;
if (strlen >= len) {
return s.substring(0, s.length - 1) + "...";
}
} else {
strlen = strlen + 1;
if (strlen >= len) {
return s.substring(0, s.length - 2) + "...";
}
}
}
return s;
}

4、生成随机整数

// 生成随机整数
function random(min, max) {
return Math.floor(Math.random() * (max - min + 1)) + min;
}

5、生成uuid

function getuuid() {
var s = [];
var hexDigits = "0123456789abcdef";
for (var i = 0; i < 36; i++) {
s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);
}
s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010
s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01
s[8] = s[13] = s[18] = s[23] = "-"; var uuid = s.join("");
return uuid;
}

6、获取url参数,兼容hash后的参数(可获取中文参数)

function getQueryString(name) {
let search = window.location.search.substr(1) || window.location.hash.split('?')[1];
let reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)');
if (!search) return;
let r = search.match(reg);
if (r != null) return decodeURI(r[2]);
return null;
}

最新文章

  1. Spring @Autowired注解在utils静态工具类
  2. Oracle PL/SQL
  3. 单例模式(Singleton Pattern)
  4. Socket通信的理解
  5. 单例模式/singleton模式/创建型模式
  6. eclipse从数据库逆向生成Hibernate实体类
  7. Opencv step by step - 图像变换
  8. JavaScript系列:replace()函数(第二个参数为函数)
  9. Android实现发短信与打电话的功能
  10. oracle常用SQL语句(汇总版)
  11. 浅谈JavaScript的push()函数
  12. Spring MVC 解读——@RequestMapping (2)(转)
  13. 【C++实现】HeadFirst策略模式设计模式
  14. Xpath语法格式整理
  15. 如何配置FTP服务器,方便操作服务器文件
  16. C++笔记007:易犯错误模型——类中为什么需要成员函数
  17. 4.9Python数据处理篇之Matplotlib系列(九)---子图分布
  18. spec文件中的 %pre %post %preun %postun
  19. 开源评测系统hustoj-代码解读
  20. vue-路由懒加载

热门文章

  1. 【OSG】将显示的图形窗口化
  2. Mscomm控件安装问题 License information for TMSComm not found.
  3. 半夜思考之查漏补缺 , Spring 中 Bean 之间的依赖问题
  4. Java并发编程实战3-可见性与volatile关键字
  5. 【Nginx笔记】 fastcgi_param解释
  6. linq 左连接实现两个集合的合并
  7. 【刷题】BZOJ 1977 [BeiJing2010组队]次小生成树 Tree
  8. C++模板编程中只特化模板类的一个成员函数
  9. C++中三种传递参数方法的效率分析
  10. 【专题】字符串专题小结(AC自动机 + 后缀自动机)