博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES学习笔记(15)--用Proxy进行预处理
阅读量:6095 次
发布时间:2019-06-20

本文共 1345 字,大约阅读时间需要 4 分钟。

钩子函数

在运行函数前初始化一些数据,在改变对象值后做一些善后处理。这些都算钩子函数,Proxy的存在就可以让我们给函数加上这样的钩子函数,你也可以理解为在执行方法前预处理一些代码。你可以简单的理解为他是函数或者对象的生命周期。

定义对象的方法

var obj = {            add:function(val){                return val + 10;            },            name:"i am jie"        }        console.log(obj.add(100));        console.log(obj.name)

声明Proxy

new Proxy({},{});

var pro = new Proxy({            add: function (val) {                return val + 10;            },            name: "i am jie"        },{            get:function(target,key,property){                console.log('come in get');                return target[key]            }        })        console.log(pro.name)

clipboard.png

get属性

  1. target:得到的目标值
  2. key:目标的key值,相当于对象的属性
  3. property:这个不太常用,

set属性

  1. target:目标值。
  2. key:目标的Key值。
  3. value:要改变的值。
  4. receiver:改变前的原始值。
var pro = new Proxy({            add: function (val) {                return val + 10;            },            name: "i am jie"        }, {                get: function (target, key, property) {                    console.log('come in get');                    return target[key]                },                set:function(target,key,value,receiver){                    console.log(`setting${key} = ${value}`);                    return target[key] = value;                }            })        console.log(pro.name);        pro.name = "杰";        console.log(pro.name)

clipboard.png

转载地址:http://dcwza.baihongyu.com/

你可能感兴趣的文章
HDU 4377 Sub Sequence[串构造]
查看>>
云时代架构阅读笔记之四
查看>>
WEB请求处理一:浏览器请求发起处理
查看>>
Lua学习笔记(8): 元表
查看>>
PHP经典算法题
查看>>
LeetCode 404 Sum of Left Leaves
查看>>
醋泡大蒜有什么功效
查看>>
hdu 5115(2014北京—dp)
查看>>
数据结构中常见的树(BST二叉搜索树、AVL平衡二叉树、RBT红黑树、B-树、B+树、B*树)...
查看>>
PHP读取日志里数据方法理解
查看>>
第五十七篇、AVAssetReader和AVAssetWrite 对视频进行编码
查看>>
Vivado增量式编译
查看>>
一个很好的幻灯片效果的jquery插件--kinMaxShow
查看>>
微信支付签名配置正确,但返回-1,调不出支付界面(有的手机能调起,有的不能)...
查看>>
第二周例行报告
查看>>
Spring学习(16)--- 基于Java类的配置Bean 之 基于泛型的自动装配(spring4新增)...
查看>>
实验八 sqlite数据库操作
查看>>
四种简单的排序算法(转)
查看>>
Quartz2D之着色器使用初步
查看>>
多线程条件
查看>>