- 正则表达式 | |
+ 字符串匹配的一种模式 | |
+ 简化字符串操作, 像字符串查询、匹配、替换... | |
+ RegExp | |
+ 创建正则对象 | |
- let reg = new RegExp('正则') | |
- let reg = /正则/ | |
+ 正则常用方法 | |
- 正则.test(字符串) | |
- 字符串.search(正则) | |
- 字符串.match(正则) | |
- 字符串.replace(正则,新字符) | |
- 正则.exec(字符串) | |
+ 正则字符 | |
- 普通字符 a-z A-Z 0-9 ... | |
- 元字符 \d \D \w \W \s \S . [...] [^...] | |
- 限字符 {n} {n,} {n,m} + * ? | |
- 连接符 [2345678] <-> [2-8] [a-zA-Z0-9] | |
- 定位符 ^ 开始 $ \b | |
- 选择符 | [a|b] | |
- 转义符 \n \. | |
- 修饰符 g i m | |
+ 贪婪模式与非贪婪模式 | |
'12345678' /\d{3,6}/ | |
+ 分组与反向引用 | |
多个字符进行重复匹配使用分组,分组内容可以反向引用 | |
'2020-09-06' /(\d{4})-(\d{2})-(\d{2})/ | |
$1 $2 $3 | |
+ 实际开发中 大部份正则都有现成的 | |
- 运动函数封装 | |
+ 元素运动 | |
定位 top left | |
+ 平滑运动 | |
定时器 每次移动一定距离 最终到达目标位置 | |
+ 设置初始位置 | |
window.getComputedStyle(ele).left | |
ele.style.left = 初始位置 | |
原因: 运行是通过改变元素行间样式实现的 | |
+ 计算移动距离 | |
总距离(偏移量offset) 总时间time 速度rate -> distance | |
+ 移动位置和目标位置有误差情况 | |
初始位置 100px | |
总距离 200px | |
目标位置 300px | |
每次运动 50 4次 | |
100 150 200 250 | |
55 300 | |
100 155 210 265 320 | |
Math.abs(Math.abs(goal) - Math.abs(parseInt(ele.style.left))) < Math.abs(distance) | |
+ 左右运行 | |
offset 正向右 负向左 | |
+ 封装的运动函数 |
正则表达式相关
最新推荐文章于 2024-07-17 17:19:09 发布