JS操作小技巧,工作简单了(二)

简介: 本文主要讲JS操作小技巧


JS操作小技巧,工作简单了


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);

目录
相关文章
|
3月前
|
前端开发 JavaScript UED
"前端小技巧大揭秘:JS如何将后台时间戳秒变亲切小时前、分钟前,让用户秒懂,提升互动体验!"
【10月更文挑战第23天】在Web开发中,将后台返回的时间戳转换为“小时前”、“分钟前”、“刚刚”等友好的时间描述是常见需求。本文介绍如何用JavaScript实现这一功能,通过计算当前时间和时间戳的差值,返回相应的描述,提升用户体验。
65 1
|
7月前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(三)
62 1
|
7月前
|
JavaScript 前端开发 索引
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(一)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(一)
54 0
|
7月前
|
存储 JavaScript 前端开发
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(二)
JavaScript编码之路 【JavaScript之操作数组、字符串方法汇总】(二)
58 0
|
7月前
|
存储 JavaScript 前端开发
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
js/javascript 操作字符串【全】(含常用的操作字符串的lodash)
64 1
|
7月前
|
JavaScript 前端开发
js/javascript 操作对象【全】(含常用的操作对象的lodash)
js/javascript 操作对象【全】(含常用的操作对象的lodash)
48 0
|
7月前
|
存储 JavaScript 前端开发
js/javascript 操作数组【全】(含常用的操作数组的lodash)
js/javascript 操作数组【全】(含常用的操作数组的lodash)
45 0
|
7月前
|
JavaScript
js 解析和操作树 —— 获取树的深度、提取并统计树的所有的节点和叶子节点、添加节点、修改节点、删除节点
js 解析和操作树 —— 获取树的深度、提取并统计树的所有的节点和叶子节点、添加节点、修改节点、删除节点
194 0
|
7月前
|
JavaScript 前端开发
js/javascript 操作时间日期【全】含时间日期的创建、获取、比较、计算、格式化、时间戳、昨天、今天、星期汉化、计时、相关插件等
js/javascript 操作时间日期【全】含时间日期的创建、获取、比较、计算、格式化、时间戳、昨天、今天、星期汉化、计时、相关插件等
139 0
|
8月前
|
JavaScript vr&ar 数据库
技术笔记:Js获取当前日期时间及其它操作
技术笔记:Js获取当前日期时间及其它操作
158 1

热门文章

最新文章

  • 1
    当面试官再问我JS闭包时,我能答出来的都在这里了。
    45
  • 2
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    28
  • 3
    Node.js 中实现多任务下载的并发控制策略
    34
  • 4
    【2025优雅草开源计划进行中01】-针对web前端开发初学者使用-优雅草科技官网-纯静态页面html+css+JavaScript可直接下载使用-开源-首页为优雅草吴银满工程师原创-优雅草卓伊凡发布
    26
  • 5
    【JavaScript】深入理解 let、var 和 const
    49
  • 6
    【04】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架二次开发准备工作-以及建立初步后端目录菜单列-优雅草卓伊凡商业项目实战
    47
  • 7
    【03】Java+若依+vue.js技术栈实现钱包积分管理系统项目-若依框架搭建-服务端-后台管理-整体搭建-优雅草卓伊凡商业项目实战
    57
  • 8
    【02】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-ui设计图figmaUI设计准备-figma汉化插件-mysql数据库设计-优雅草卓伊凡商业项目实战
    57
  • 9
    如何通过pm2以cluster模式多进程部署next.js(包括docker下的部署)
    72
  • 10
    【01】Java+若依+vue.js技术栈实现钱包积分管理系统项目-商业级电玩城积分系统商业项目实战-需求改为思维导图-设计数据库-确定基础架构和设计-优雅草卓伊凡商业项目实战
    55