题解 | #Proxy计数器#

Proxy计数器

http://www.nowcoder.com/practice/9911c5f8ecef4b3088ccbba397b7a984

31_Proxy计数器

本题考点:Proxy

根据题目要求,用Proxy代理一个对象,每当通过代理访问该对象拥有的属性时,“count”加1,当访问该对象没有的属性时,“count”减1,核心步骤有:

  1. 创建一个Proxy实例,该构造函数接收两个参数,第一个参数是被代理的对象,第二个参数是处理方法
  2. 在处理方法中设置“get”计算方法,该方法接收两个参数,第一个参数是被代理的对象,第二个参数是当前“get”读取的属性
  3. 当第二个参数在第一个参数中时,“count“加1,否则减1

参考答案

let count = 0
const _proxy = object => {
    let proxy = new Proxy(object, {
        get: function(target, propKey) {
            if(propKey in target) {
                count ++
            } else {
                count --
            }
        }
    })
    return proxy
}

全部评论

相关推荐

学java时间比较短不到三个月,基本的技术栈都过了一遍就是都不太深,有个小项目。是继续找实习还是沉淀准备秋招呢?找实习的话会花很多时间在八股,放弃的话又怕秋招简历太难看。有无大佬支招
今天java了吗:1.一定要找实习,实习不一定要去,但是找实习过程中的面试经验和心态经验才是最重要的 2.八股本来就是大头,甚至比项目重要 3.这个时间段也是面试比较多的阶段,可以抓住机会锻炼。面试才会发现自己的不足,感觉自己会了和能给面试官娓娓道来是两码事
点赞 评论 收藏
分享
06-15 18:44
黄淮学院 Java
Lynn012:如果是居民楼还是算了吧,看着有点野呢
点赞 评论 收藏
分享
评论
13
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务