深入js之什么是函数节流?

本文深入探讨JavaScript中的函数节流技术,解释其概念,强调与防抖的区别,并通过代码示例展示如何在Vue项目中应用节流函数,建议读者通过实践掌握这一技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

节流

概念:

节流的意思是让函数有节制地执行,而不是毫无节制的触发一次就执行一次。什么叫有节制呢?就是在一段时间内,只执行一次。

注意(区别与防抖的地方)

防抖函数文章戳这里:防抖

  • 持续触发并不会执行多次
  • 到一定时间再去执行
    在这里插入图片描述
    不管你触发多少次,我都是每隔一段时间执行一次,我行我素!
    在这里插入图片描述

来康康代码实现

工具函数中写入

// 函数节流
export function throttle(fn, wait) {
    let run = true
    return function () {
		var args = arguments 
      if (!run) {
        return  // 如果开关关闭了,那就直接不执行下边的代码
      }
      run = false // 持续触发的话,run一直是false,就会停在上边的判断那里
      setTimeout(() => {
        fn.apply(this, args)
        run = true // 定时器到时间之后,会把开关打开,我们的函数就会被执行
      }, wait)
    }
}

页面导入
然后在vue页面中,methods中使用

  • 先导入函数
import { throttle} from '../../utils/common.js'
<input v-model="searchText" @input='think()' placeholder="搜索" >
  • 在methods中
// 联想
think:throttle( function(value) {
	// 请求联想接口....
},200), 

现在对于防抖和节流应该有很清楚的了解了吧,不熟悉的反复多看看,一定要写熟练!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值