36道js手写
无声有寒
这个作者很懒,什么都没留下…
展开
-
节流小例子
1.防抖是执行最后一次。节流是控制执行的次数,无论你触发多少次,我都是几秒执行一次。比如滚动条,滚动的时候就触发打印,随便一滚都会触发很多下。节流的关键是用一个flag,只有定时器函数执行过后,flag才会被设置为true,这个时候才能添加新的定时器。throttle函数的第一个参数是业务逻辑,第二个参数是延迟。 <script> function roll() { console.log("我滚啦") } fun原创 2021-09-25 15:43:15 · 318 阅读 · 0 评论 -
防抖小例子
1.防抖简而言之,控制程序触发的次数,以最后一次为准。一个小例子,点击按钮,触发定时器,一定时间后打印。正常情况下,点多少次,就打印多少个,触发太频繁。防抖的做法是:点击的时候,删除旧的定时器,添加新的定时器这样时间到了只会触发最后一个。<body> <button>按钮</button> <script> function pay() { console.log('买买买!')原创 2021-09-25 15:26:41 · 290 阅读 · 0 评论 -
防抖和节流
需求: 用户触发事件过于频繁,比如输入。改变页面大小,滚动的统计。防抖:只需要最后一次事件的操作。比如感应门,人来了,门打开,5秒后关闭。这时后面接着来人了,们应该重新计时,然后5秒后关闭。以最后一个人为准。5秒了没人来,执行关门操作。防抖注意闭包,this的指向防抖:一直点个不停,就不会执行。等你停了,执行最后一次。节流:控制执行次数。比如滚动屏幕,一直滚个不停,但几秒触发一次。...原创 2021-09-19 07:35:34 · 58 阅读 · 0 评论 -
1.判断类型
typeof对于基础类型,函数,undefined都可以识别打印。但对于数组,对象,null,Date都会认为是object,识别不准确。console.log(typeof(3))console.log(typeof('England'))console.log(typeof(true))console.log(typeof(undefined))console.log(typeof(()=>{}))console.log(typeof([1,2,3]))console.log(t原创 2021-09-17 19:56:28 · 94 阅读 · 0 评论