博客
关于我
JS - 常用函数
阅读量:485 次
发布时间:2019-03-06

本文共 1492 字,大约阅读时间需要 4 分钟。

1. 生成随机颜色
function getRandomColor() {     return '#' + Math.floor(Math.random() * 16777215).toString(16);}
2.生成相近颜色
function sameColor(color: any, n: number) {      let colorsArr = color.length === 6 ? color.match(/[\da-z]{2}/g) : color.match(/[\da-z]{1}/g);   let newColor = '';   for (let i = 0; i < colorsArr.length; i++) {          colorsArr[i] = parseInt(colorsArr[i].length === 1 ? colorsArr[i] + colorsArr[i] : colorsArr[i], 16);       newColor += Math.floor(colorsArr[i] + (Math.random() > 0.5 ? -1 : 1) * Math.random() * n).toString(16);   }   return newColor; }
3.获取url参数
function getParam(name: any) {     let reg = new RegExp('(^|&)' + name + '=([^&]*)(&|$)', 'i');  let r = window.location.search.substr(1).match(reg);  if (r != null) return decodeURI(r[2]);  return null;}
4. 将数字转成每隔3位加一个逗号
// 12345678 => 123,456,78function addCommas(n: any) {     let reg = /\.\d+/;  let num = (parseInt(n) || 0).toString();  let temp = reg.exec(num);  // 获取小数部分,不存在小数则获取空字符串  let decimal = temp && temp[0] ? temp[0] : '';  // 获取小数点位置,不存在小数位置则获取字符串长度  let decimalPointIndex = temp && temp.index ? temp.index : num.length;  // 获取整数部分  let integerNum = num.slice(0, decimalPointIndex);  let result = '';  // 逗号分隔操作  while (integerNum.length > 3) {       result = ',' + integerNum.slice(-3) + result;    integerNum = integerNum.slice(0, integerNum.length - 3);  }  // 不足3位直接加到最前面  if (integerNum) {       result = integerNum + result;  }  // 最后面加上小数部分  result = result + decimal;  return result;}

转载地址:http://yhodz.baihongyu.com/

你可能感兴趣的文章
Netty工作笔记0020---Selectionkey在NIO体系
查看>>
Vue踩坑笔记 - 关于vue静态资源引入的问题
查看>>
Netty工作笔记0024---SelectionKey API
查看>>
Netty工作笔记0025---SocketChannel API
查看>>
Netty工作笔记0027---NIO 网络编程应用--群聊系统2--服务器编写2
查看>>
Netty工作笔记0050---Netty核心模块1
查看>>
Netty工作笔记0057---Netty群聊系统服务端
查看>>
Netty工作笔记0060---Tcp长连接和短连接_Http长连接和短连接_UDP长连接和短连接
查看>>
Netty工作笔记0063---WebSocket长连接开发2
查看>>
Netty工作笔记0070---Protobuf使用案例Codec使用
查看>>
Netty工作笔记0072---Protobuf内容小结
查看>>
Netty工作笔记0077---handler链调用机制实例4
查看>>
Netty工作笔记0081---编解码器和处理器链梳理
查看>>
Netty工作笔记0084---通过自定义协议解决粘包拆包问题2
查看>>
Netty工作笔记0085---TCP粘包拆包内容梳理
查看>>
Netty常用组件一
查看>>
Netty常见组件二
查看>>
netty底层源码探究:启动流程;EventLoop中的selector、线程、任务队列;监听处理accept、read事件流程;
查看>>
Netty心跳检测
查看>>
Netty心跳检测机制
查看>>