博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JS - 常用函数
阅读量:480 次
发布时间:2019-03-06

本文共 1499 字,大约阅读时间需要 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/

你可能感兴趣的文章