JS常用库
js常用库
计时器
setTimeout(func, delay)
delay毫秒后,执行函数func
clearTimeout()
关闭计时器,例如:
1 | let timeout_id = setTimeout(() => { |
setInterval(func, delay)
每隔delay毫秒,执行一次函数func
clearInterval()
1 | let interval_id = setInterval(() => { |
requestAnimationFrame(func)
该函数会在下次浏览器刷新页面之前执行一次,通常会用递归写法使其每秒执行 60 次 func 函数。调用时会传入一个参数,表示函数执行的时间戳,单位为毫秒。
1 | function print() { |
这样每秒就会执行60次打印“我爱白玫瑰”。这个函数经常被用来做动画。
- requestAnimationFrame 渲染动画的效果更好,性能更加。
该函数可以保证每两次调用之间的时间间隔相同,但 setTimeout 与 setInterval 不能保证这点。 - 当页面在后台时,因为页面不再渲染,因此 requestAnimationFrame 不再执行。但 setTimeout 与 setInterval 函数会继续执行。
数据结构类
Map类
- 用
for...of或者forEach可以按插入顺序遍历 - 键值可以为任意值
用法:
set(key, value):插入键值对,如果 key 已存在,则会覆盖原有的 valueget(key):查找关键字,如果不存在,返回 undefinedsize:返回键值对数量has(key):返回是否包含关键字 keydelete(key):删除关键字 keyclear():删除所有元素
Set类
Set 对象允许你存储任何类型的唯一值,无论是原始值或者是对象引用。
- 用
for...of或者forEach可以按插入顺序遍历
用法:
add():添加元素has():返回是否包含某个元素size:返回元素数量delete():删除某个元素clear():删除所有元素
localStorage
可以在用户的浏览器上存储键值对。这样数据在刷新的时候就不会消失。
setItem(key, value):插入getItem(key):查找removeItem(key):删除clear():清空
杂项
JSON
将对象(字典)和字符串互相转化的一种函数
JSON.parse():将字符串解析成对象JSON.stringify():将对象转化成字符串
时间
返回值为整数的 API,数值为 1970-1-1 00:00:00 UTC(世界标准时间)到某个时刻所经过的毫秒数:
Date.now():返回现在时刻Date.parse("2022-04-15T15:30:00.000+08:00"):返回北京时间 2022 年 4 月 15 日 15:30:00 的时刻。
与Date对象的实例相关的API:
new Date():返回现在时刻new Date("2022-04-15T15:30:00.000+08:00"):返回北京时间 2022 年 4 月 15 日 15:30:00 的时刻- 两个Date对象实例的差值为毫秒数
getDay():返回星期,0表示星期日getDate():返回日,数值为1~31getMonth():返回月,数值为0~11getFullYear():返回年份getHours():返回小时getMinutes():返回分钟getSeconds():返回秒getMilliseconds():返回毫秒
WebSocket
new WebSocket('ws://localhost:8080')建立ws连接send():向服务器端发送一个字符串。一般用 JSON 将传入的对象序列化为字符串。onopen:类似于onclick,当连接建立时触发onmessage:当从服务器端接收到消息时触发close():关闭连接onclose:当连接关闭后触发
window
window.open("https://www.acwing.com"):在新标签栏中打开界面location.reload():刷新页面location.href = "https://www.acwing.com":在当前标签栏中打开界面
canvas
此文章版权归金晖の博客所有,如有转载,请註明来自原作者
评论




