解构赋值+Proxy的骚操作

422 阅读1分钟

这几天在浏览Vue-use的文档, 发现基本能想到的功能都涵盖了. 各种各样的轮子, 从卡车到三轮车. 然后, 看到了一段很奇怪的代码

const { Ctrl_A_B, space, alt_s /* ... */ } = useMagicKeys()

乍一看, 啥操作啊, 竟然能解包出那么奇怪的属性? 魔法吗? 然后一翻源码, 恍然大悟....果然不是我能看懂的.... 不过, 知道了返回值是Proxy. 然后, 自己写了一段测试代码

obj = new Proxy({},{
    get(target,prop,r){
        console.log(prop)
        return 
    }
})

let {x,y}=obj// x y

老练的程序员真厉害!