国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Proxy(代理器/攔截器)Reflect反射

Batkid / 2582人閱讀

摘要:代理器攔截器反射和一樣都是用來操作對象的代理操作代理器同樣具有方法小花男小花沒有該屬性李小花反射和一樣都是用來操作對象的小花女師徒教育小花沒有該屬性李小花主要就是在執行函數之前代理一下完事在執行

Proxy(代理器/攔截器)Reflect反射

Reflect和Proxy一樣 都是es6用來操作對象的 API

Proxy 代理操作
Proxy代理器
        var proxy = new Proxy({}, {
            get: function(target, property) {
            return 35;
            }
        });

        let obj = Object.create(proxy);
        obj.time // 35
        console.log(obj.time) 

Proxy()同樣具有get、set方法

let obj={
            name:"小花",
            age:18,
            sex:"男"
        }

        var proxObj=new Proxy(obj,{
            set:function(target,key,value){
                if(value=="小花"){
                    target[key]=value;
                }
            },
            get:function(target,key){
                if(target[key]==undefined){
                    return "沒有該屬性"
                }else{
                    return target[key];
                }
            }  
        })
        proxObj.name="李小花";
        console.log(proxObj.name)
Reflect(反射)
//Reflect和Proxy一樣 都是es6用來操作對象的 API
        let obj={
            name:"小花",
            age:18,
            sex:"女"
        }

        //Reflect.defineProperty(obj,"school",{value:"師徒教育"});
        Reflect.deleteProperty(obj,"age");
        console.log(Reflect.has(obj,"sex"));
        console.log(obj);
        var proxObj=new Proxy(obj,{
            set:function(target,key,value){
                if(value=="小花"){
                    Reflect.set(target,key,value);
                }
            },
            get:function(target,key){
                if(target[key]==undefined){
                    return "沒有該屬性"
                }else{
                    return  Reflect.get(target,key);
                }
            }  
        })
        proxObj.name="李小花";
        console.log(proxObj.name)

主要就是在執行函數之前Reflect代理一下完事在執行!

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/84145.html

相關文章

  • 【ES6】改變 JS 內置行為的代理反射

    摘要:通過對這些底層內置對象的代理陷阱和反射函數,讓開發者能進一步接近引擎的能力。顯然,與要求代理目標對象必須是一個函數,這兩個代理陷阱在函數的執行方式上開啟了很多的可能性,結合使用就可以完全控制任意的代理目標函數的行為。 代理(Proxy)可以攔截并改變 JS 引擎的底層操作,如數據讀取、屬性定義、函數構造等一系列操作。ES6 通過對這些底層內置對象的代理陷阱和反射函數,讓開發者能進一步接...

    lushan 評論0 收藏0
  • 《深入理解ES6》筆記——代理Proxy)和反射Reflection)API(12)

    摘要:方法與代理處理程序的方法相同。使用給目標函數傳入指定的參數。當然,不用反射也可以讀取的值。的例子我們可以理解成是攔截了方法,然后傳入參數,將返回值賦值給,這樣我們就能在需要讀取這個返回值的時候調用。這種代理模式和的代理有異曲同工之妙。 反射 Reflect 當你見到一個新的API,不明白的時候,就在瀏覽器打印出來看看它的樣子。 showImg(https://segmentfault....

    ZHAO_ 評論0 收藏0
  • 《深入理解ES6》筆記——代理Proxy)和反射Reflection)API(12)

    摘要:方法與代理處理程序的方法相同。使用給目標函數傳入指定的參數。當然,不用反射也可以讀取的值。的例子我們可以理解成是攔截了方法,然后傳入參數,將返回值賦值給,這樣我們就能在需要讀取這個返回值的時候調用。這種代理模式和的代理有異曲同工之妙。 反射 Reflect 當你見到一個新的API,不明白的時候,就在瀏覽器打印出來看看它的樣子。 showImg(https://segmentfault....

    shiina 評論0 收藏0
  • Proxy(代理,攔截),Reflect(反射)

    Proxy(代理,攔截器),Reflect(反射) Proxy: 代理: var duixaing = { name:小胖, age:25, sex:男 } duixaing.name=老胖; console.log(duixaing.name);//打?。豪吓?。 console.log(duixaing);//打?。?..

    張紅新 評論0 收藏0

發表評論

0條評論

Batkid

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<