1、补0操作
场景:页面月和日的显示,需要用0或者其他字符占位。
var number = 11; ('0' + number).slice(-2);
2、千分位划分
场景:页面展示金额,进行位数划分。
const AmountSlite = (value) => { const regExp = /(\d{1,3})(?=(\d{3})+(?:$|\.))/g; const ret = (value + '').replace(regExp, '$1,'); return ret; };
3、正则校验0-100的数字,最多保留两位有效数字
场景:百分比校验,输入框数字校验
var reg = /^\d\.([1-9]{1,2}|[0-9][1-9])$|^[0-9]\d{0,1}(\.\d{1,2}){0,1}$|^100(\.0{1,2}){0,1}$/; // 大于0,保留两位小数 var reg1 = /^[1-9](\d+)?(\.\d{1,2})?$)|(^\d\.\d{1,2}$/ // 大于等于0,保留两位小数 var reg2 = /^(0|[1-9]\d*)(\s|$|\.\d{1,2}\b)/
4、快速交换两个数字
场景:算法排序交换两个值
let x = 1; let y = 2; [x ,y] = [y, x];
5、获取一个月的最后一天
场景:根据年月,或者月的最后一天
new Date('2020', '1', 0).getDate();
6、关键字void使用
场景: 使用 void 运算符可确保你得到一个真正的 undefined 。 也用于最小化目的。
console.log(1); // 1 console.log(void 1); let obj = { m: 1 }; console.log(void obj.m);
7、任意类型判断
场景:获取变量类型
const type = data => Object.prototype.toString.call(data).replace(/^\[object (.+)\]$/, '$1').toLowerCase();
8、Js唤起微信
场景:h5操作微信
window.location.href="weixin://"; // H5操作微信:http://www.xiaoshu168.com/jquery/172.html
9、过滤数组中的falsy值
场景:过滤数组中你不想要的falsy值
const arr = [0, 1, '0', '1', +0, -0, undefined, null, 'undefined', 'null', '', '蜗牛',true, false, NaN, 'NaN']; arr.filter(Boolean);