节流,防抖,proxy

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
// 节流
let throttle = function(func, delay) {
    let timer = null;
    return ()=> {
        if (!timer) {
            timer = setTimeout(() => {
                func.apply(this, arguments);
                timer = null;
            }, delay);
        }
    };
};
function handle() {
    console.log(new Date());
}
window.addEventListener("scroll", throttle(handle, 1000));
 
// 防抖
function debounce(fn, wait) {
    var timeout = null;
    return () => {
    if (timeout !== null) clearTimeout(timeout);
    timeout = setTimeout(()=> {
        fn.apply(this, arguments);
        timeout = null;
        }, wait);
    };
}
function handle() {
    console.log(new Date());
}
window.addEventListener("scroll", debounce(handle, 1000));
 
// proxy
let handler = {
    get(target, key, receiver) {
    console.log("get", key);
    return Reflect.get(target, key, receiver);
    },
    set(target, key, value, receiver) {
    console.log("set", key, value);
    return Reflect.set(target, key, value, receiver);
    }
};
let obj = {name: '张三', age: 23};
let proxy = new Proxy(obj, handler);
proxy.name = "李四";
proxy.age = 24;

  

posted @   鱿鱼须须  阅读(219)  评论(0编辑  收藏  举报
(评论功能已被禁用)
点击右上角即可分享
微信分享提示