在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML/ js 仿抖動(dòng)函數(shù)為什么要存起this并在執(zhí)行時(shí)為回調(diào)綁定作用域

js 仿抖動(dòng)函數(shù)為什么要存起this并在執(zhí)行時(shí)為回調(diào)綁定作用域

RT 因?yàn)槟涿瘮?shù)中this指針本來(lái)就指向window不明白 如果只是想通過(guò)通過(guò)apply傳遞args參數(shù)列表完全可以寫(xiě)成fn.apply(window, args); 此舉有何意義

fn.apply(context, args);


  let timer = null;

  return function() {
    
    let context = this;
    let args = arguments;

    clearTimeout(timer);
    timer = setTimeout(function() {
      fn.apply(context, args);
    }, delay);
  }
} 



回答
編輯回答
熟稔

setTimeout的函數(shù)里的this是指向window的,如果你在fn里需要訪(fǎng)問(wèn)function的上下文的話(huà)需要傳入,否則也可以不傳

2017年9月5日 17:34
編輯回答
綰青絲

定時(shí)器里的this指向window,建議你查一下js的this指向

2018年1月13日 21:39
編輯回答
孤巷

就從你這里的函數(shù)定義是無(wú)法知道匿名函數(shù)的 this 指向的, 要看匿名函數(shù)是怎么調(diào)用的。

2017年2月14日 04:12
編輯回答
安于心

被節(jié)流的函數(shù)中this也可能不是window

2017年10月31日 00:52
編輯回答
枕頭人

這篇文講的很好,推薦

2018年8月23日 04:45