节流函数&防抖函数 柯里化函数
/*
onscroll
onresize
input
。。。。。
节流函数
让高频率事件进行减少触发变成低频率事件
var bStop = true;
window.onscroll = function() {
if(!bStop){
return;
}
bStop = false;
setTimeout(()=>{
var t = document.documentElement.scrollTop || document.body.scrollTop;
console.log(t);
bStop = true;
},300)
}
函数防抖
当高频率事件触发的时候 我们不需要知道频繁触发的过程,只需要知道最后的结果
*/
var timer = null;
window.onscroll = function(){
if(timer){
clearTimeout(timer);
}
timer = setTimeout(()=>{
var t = document.documentElement.scrollTop || document.body.scrollTop;
console.log(t);
},300)
}
</script>
/*
惰性函数 和 柯里化函数
*/
function getStyle(obj,attr){
if(obj.currentStyle){
return obj.currentStyle[attr]
}else{
return getComputedStyle(obj,false)[attr];
}
}
function getStyle(obj,attr){
if(obj.currentStyle){
getStyle = function(obj,attr){
return obj.currentStyle[attr];
}
}else{
getStyle = function(obj,attr){
return getComputedStyle(obj,false)[attr];
}
}
return getStyle(obj,attr);
}