随笔分类 - js
摘要:如: 验证字符串'php is good'中是否同时存在'php' 和 'good' 正则则这样写: /^(?=.*php)(?=.*good).*$/
阅读全文
摘要:var timer function run(){ //clearInterval要放在方法开始,不然的话,下面的代码还没运行到clearInterval,又开始了循环了。 if(timer){ clearInterval(timer) } //do something.... timer = se
阅读全文
摘要:let iosDownload = '******', // 如果打开scheme失效的app下载地址 andDownload = '*****'; let u = navigator.userAgent; let isAndroid = u.indexOf('Android') > -1 || u
阅读全文
摘要:navigator.vibrate = navigator.vibrate || navigator.webkitVibrate || navigator.mozVibrate || navigator.msVibrate; if(navigator.vibrate) { // 支持 console
阅读全文
摘要:grid: { left: '2%', right: '2%', bottom: '3%', containLabel: true },
阅读全文
摘要:while(this.arr.length < 3){ let num = parseInt(Math.random() * 9) // parseInt取正,小数点后面的数字全部抹掉 // Math.random() 0-1的随机数 if (this.arr.indexOf(num) == -1)
阅读全文
摘要:function mix(...mixins) { class Mix { constructor() { for (let mixin of mixins) { copyProperties(this, new mixin()); // 拷贝实例属性 } } } for (let mixin of
阅读全文
摘要:worker_script.js: const workerCode = () => { self.onmessage = (e) => { setInterval(() => { // 自己的逻辑代码 },e.data); }; }; let code = workerCode.toString(
阅读全文
摘要:问题:测试发现ios微信端浏览器中,input失焦后,因软键盘顶起的页面没有回弹到原来位置,需手动滑动一下页面才可以恢复;android端没有发现这个问题解决方法:当失焦后,页面进行滚动: function blurFun() { setTimeout(() => { window.scrollTo
阅读全文
摘要:Object.keys(localStorage).forEach(item => item.indexOf('mine') !== -1 ? localStorage.removeItem(item) : ''); 删除带mine字段的缓存
阅读全文
摘要:在将特定格式转换为时间戳的时候,我们通常的做法事new Date(str).getTime(), 这个方法在谷歌上是可行的,但是在ie上需要注意一点,就是这个str如果是“2019-11-15”的格式,需要转换成“2019/11/15” 的格式,不然会出现NAN的情况
阅读全文
摘要:Math.floor(Math.random() * (50 - 1 + 1) + 1); 生成1-50内的随机整数
阅读全文
摘要:Math.round(num*100)/100
阅读全文
摘要:在使用file上传文件的时候,想到了图片预览的功能,然后查询了一些资料,一种是需要后端配合,将数据变成base64或者buff等数据传给后端然后调取接口进行显示,但是这种需要后端的配合和网络请求,感觉不如在纯前端操作方便的多, 话不多说,上代码: 效果如图所示:
阅读全文
摘要:网上看到很多移动端适配的各种方法,由于原来工作中对rem的疏忽,所以决定重新学习rem~ 由于移动端特殊性,本文讲的是如何使用rem实现自适应,或叫rem响应式布局,通过使用一个脚本就可以rem自适应,不用再为各种设备宽度不同而烦恼如何实现自适应的问题。 rem是相对于根元素<html>,这样就意味
阅读全文
摘要:在使用file类型input框是,删除了第一次上传到文件,再次上传相同文件,无法触发change事件,所以在删除的js上添加如下js代码:
阅读全文
摘要:1、自定义一个比较器,其参数为待排序的属性。 2、将带参数的比较器传入sort()。
阅读全文
摘要:1.机制如下: 注意一点: 宏任务需要多次事件循环才能执行完,微任务是一次性执行完的; 2.宏任务macrotask: (事件队列中的每一个事件都是一个macrotask) 优先级:主代码块 > setImmediate > MessageChannel > setTimeout / setInte
阅读全文
摘要:方法一、正则表达式 方法二、 方法三、 其他参数获取介绍: //设置或获取对象指定的文件名或路径。alert(window.location.pathname);//设置或获取整个 URL 为字符串。alert(window.location.href);//设置或获取与 URL 关联的端口号码。a
阅读全文