前端两三问
未读1、必须包含小数点let regDis = /^(?=0\.[1-9]'[1-9]\.\d).{3}$'^([2-9])$/
2、非必须包含小数点let regDis = /^[0-9]{1}(\.[0-9])?$/
3、判断H5是否在小程序webview打开<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
<script>
var ua = navigator.userAgent.toLowerCase();
if(ua.match(/MicroMessenger/i)=="micromessenger") {
//ios的ua中无miniProgram,但都有MicroMessenger(表示是微信浏览器)
wx.miniProgram ...
一年一年又一年以前小时候的时候,每年到了大年三十的下午不管有什么事都会抽开身,跑到电视前面,看《一年一年又一年》,喜欢看里面各地的风俗,人文,烟火。自从长的后,就再也没有这些了。生活已经让你远离这些,去接受一些你可能不想接受的事物!
生活今年感觉都在和医院打交道,从年初感冒,咳嗽发展成肺炎去住院打点滴。到年尾还在和胃病做斗争吃中药,真的是生病开始,吃药结束的一年。
今年因为疫情,过年的时候比以往多了那么几天,在家的时间也感觉多了那么几天。感觉有生活的气息,在家好像才能完全放松!不必考虑生活、工作的琐事,因为回到家就是放假的开始,其他一切通通滚开!
感觉今年,
就是过的很快!
从内心深处,
就希望TA过的很快。
时间不会辜负你的期待,
一眨眼,就到了年底。
因为年初有了好消息,一个小生命快要诞生了。
所以就希望时间过的快一点,希望TA早点到来。
等待的日子总是煎熬,虽然你知道,十个月总归是要过去的,那一天总归是要到来的。
终于到了年末的最后一个月迎接了TA的到来,看到TA和TA妈健健康康,平平安安,十个月的担心和等待也是值得。
为人父之后,再也不会和之前一样的心境了。你要 ...
1、获取当前时间往前往后多少天!代码function getNumTime(num) {
let afterDate = new Date();
afterDate.setDate(afterDate.getDate() + num);
let year = afterDate.getFullYear();
let month = afterDate.getMonth() + 1;
let day = afterDate.getDate();
if (month > 0 && month <= 9) {
month = '0' + month;
}
if (day > 0 && day <= 9) {
day = '0' + day;
}
return year + "-" + month + "-" + day;
}
使用方法getNumTi ...
HTML<div class="box">
<div class="code" id="checkCode">{{nowCode}}</div>
<a href="###" @click="changeCode">看不清,换一张</a>
<input type="text" placeholder="请输入验证码" v-model="inputCode">
<button id="subBtn" @click="isLegalCode">验证</button>
</div>
CSS.box {
width:300px;
height:150px;
border:1px soli ...
本文转载掘金作者 @kuangyaoqian ☞☞☞点击跳转原文~
分享一些常用的鼠标滑过hover样式。
一、纯图片的DIVHTML 代码<div class="lists">
<a href="#" class="box">
![](avatar.jpg)
</a>
<a href="#" class="box">
![](avatar.jpg)
</a>
</div>
1、缓动上移效果图
CSS.lists{
display: flex;
margin-top: 100px;
justify-content: center;
}
.box{
width: 200px;
height: 200px;
transition: all 0.3s;
}
.bo ...
本文转载掘金作者 @洛霞 ☞☞☞点击跳转原文~
手写JS是前端最常备的技能之一。吐血整理32道常见的手写JS题目,帮助大家提升巩固自身的JS技能。
01.数组扁平化const arr = [1, [2, [3, [4, 5]]], 6];
// => [1, 2, 3, 4, 5, 6]
方法一:使用flat()const res1 = arr.flat(Infinity);
方法二:利用正则const res2 = JSON.stringify(arr).replace(/\['\]/g, '').split(',');
方法三:正则改良版本const res3 = JSON.parse('[' + JSON.stringify(arr).replace(/\['\]/g, '') + ']');
方法四:使用reduceconst flatten = arr => {
return arr.reduce((pre, cur) => {
...
本文转载掘金作者 @johnYu ☞☞☞点击跳转原文~
1、什么是WebSocket?1.1、定义
Websocket是一个持久化的网络通信协议,可以在单个 TCP 连接上进行全双工通讯,没有了Request和Response的概念,两者地位完全平等,连接一旦建立,客户端和服务端之间实时可以进行双向数据传输。
1.2、关联和区别1.2.1、HTTP
1、HTTP是非持久的协议,客户端想知道服务端的处理进度只能通过不停地使用 Ajax进行轮询或者采用 long poll 的方式来,但是前者对服务器压力大,后者则会因为一直等待Response造成阻塞。
2、虽然http1.1默认开启了keep-alive长连接保持了这个TCP通道使得在一个HTTP连接中,可以发送多个Request,接收多个Response,但是一个request只能有一个response。而且这个response也是被动的,不能主动发起。
3、websocket虽然是独立于HTTP的一种协议,但是websocket必须依赖 HTTP 协议进行一次握手(在握手阶段是一样的),握手成功后,数据就直接从 TCP通道传输,与 ...
1. 防抖function debounce(func, ms = 1000) {
let timer;
return function (...args) {
if (timer) {
clearTimeout(timer)
}
timer = setTimeout(() => {
func.apply(this, args)
}, ms)
}
}
// 测试
const task = () => { console.log('run task') }
const debounceTask = debounce(task, 1000)
window.addEventListener('scroll', debounceTask)
2. 节流function throttle(func, ms = 1000) {
let canRun = true
ret ...