首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
前端面试
订阅
Hoooooo
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
小程序直播-疯狂点赞Canvas动画实现原理解析
近期,电商直播业务热火朝天,直播间有一个很重要的互动:点赞。 点赞动画图片大小不一,运动轨迹也是随机的。 点赞动画图片都是先放大再匀速运动。 快到顶部的时候,逐渐缩小并消失。 收到大量的点赞请求的时候,点赞动画不扎堆,井然有序持续出现。 刚接到这个需求的时候,考虑过CSS 动画…
微任务、宏任务与Event-Loop
首先,JavaScript是一个单线程的脚本语言。 所以就是说在一行代码执行的过程中,必然不会存在同时执行的另一行代码,就像使用alert()以后进行疯狂console.log,如果没有关闭弹框,控制台是不会显示出一条log信息的。 亦或者有些代码执行了大量计算,比方说在前端暴…
「前端进阶」从多线程到Event Loop全面梳理
几乎在每一本JS相关的书籍中,都会说JS是单线程的,JS是通过事件队列(Event Loop)的方式来实现异步回调的。 对很多初学JS的人来说,根本搞不清楚单线程的JS为什么拥有异步的能力,所以,我试图从进程、线程的角度来解释这个问题。 计算机的核心是CPU,它承担了所有的计算…
前端知识体系(1)-js篇
本知识体系是为了查漏补缺,提升自己(不一定适合你们)而整理的。 本文结构尽量做到精简,详细内容点击每个模块下方链接。 文章将按模块进行分类,以简单的文字和外链相对深入的文章来整理各个模块。 一旦声明必须赋值,不能使用null占位。 一般通过 typeof 操作符来判断一个值属于…
前端知识体系(3)-浏览器篇
URL(Uniform Resource Locator),统一资源定位符,俗称网址。用于定位互联网上资源。URL 给资源的位置提供了一种抽象的识别方法,并用这种方法给资源定位,从而对资源进行各种操作,增删改查。 scheme - 定义协议的类型。常见的协议有 http、htt…
前端知识体系(2)-vue篇
MVVM的核心是数据驱动即ViewModel,ViewModel是View和Model的关系映射。MVVM本质就是基于操作数据来操作视图进而操作DOM,借助于MVVM无需直接操作DOM,开发者只需编写ViewModel中有业务,使得View完全实现自动化。 SPA( singl…
vue响应式详解(重学前端-vue篇1)
使用Object.defineProperty和ES6的Proxy,这就是进行数据劫持或数据代理。 Vue通过设定对象属性的 setter/getter 方法来监听数据的变化,通过getter进行依赖收集,而每个setter方法就是一个观察者,在数据变更的时候通知订阅者更新视图…
前端性能优化 24 条建议(2020)
性能优化是把双刃剑,有好的一面也有坏的一面。好的一面就是能提升网站性能,坏的一面就是配置麻烦,或者要遵守的规则太多。并且某些性能优化规则并不适用所有场景,需要谨慎使用,请读者带着批判性的眼光来阅读本文。 本文相关的优化建议的引用资料出处均会在建议后面给出,或者放在文末。 1. …
Vuex一问一答(重学前端-vue篇3)
1. 直接修改与commit提交mutation修改state的差异 2. Vuex中状态是对象时要注意什么 因为对象是引用类型,复制后改变属性还是会影响原始数据,这样会改变state里面的状态,是不允许,所以先用深度克隆复制对象,再修改。 3. 组件中批量使用Vuex的sta…
Vue-Router面试题汇总
其中include可以是个数组,数组内容为路由的name选项的值。 hash: 兼容所有浏览器,包括不支持 HTML5 History Api 的浏览器,例http://www.abc.com/#/index,hash值为#/index, hash的改变会触发hashchang…