为什么要使用JavaScript代理?

最近,我正在阅读一些不太著名的javascript功能,并且找到了Javascript Proxy

在探讨原因之前,让我们先了解一下它是什么。 如果您已经知道,请随时跳过几段。

代理是魔术方法
代理是javascript中的一个对象,它包装一个对象或函数并通过称为target的对象对其进行监视。 与包装对象或函数的存在无关。 代理类似于其他语言中的元编程。

在继续之前,我们需要了解3个关键术语:

  1. 目标 :要代理的对象或功能。
  2. 处理程序:对代理的对象或函数执行某些操作的函数。
  3. 陷阱 :这些是用于目标的一些功能。 单击此处以了解有关陷阱的更多信息。

下面是我们的定义方式

句法

我们使用ES6中的代理类,参数,目标是包装对象,处理程序将是使用陷阱对目标执行某些操作的函数。

以下是其用法的简单示例

代理的基本示例

我们制作了两个对象,分别是target和handler,target是带有消息键的简单对象,handler是具有get键和与其关联的功能的对象。 我们在代理类中传递2个对象,然后返回一个代理对象,通过它我们可以访问目标对象的message属性。

这是一个如何使用它来验证对象值的小例子

验证对象密钥的

我们使用一个空对象作为目标对象,并使用一个对目标对象进行设置陷阱并进行验证的处理程序。 很简单吧!

让我们研究一下如何使用它进行API调用包装

我们使用过axios ,然后使用baseURL创建了一个实例,为代理创建了一个处理程序,该处理程序返回了要使用的get,post,put,delete,patch函数的对象,最后制作了一个api对象,它是一个代理对象到一个空对象目标。

然后我们可以将其用作:

调用API代理对象

这可以扩展为进行验证,值校正,跟踪属性访问,有关未知属性的警告,否定的数组索引,数据绑定,访问宁静的Web服务(方法调用),可撤销的引用,监视异步功能,类型检查以及更多内容,请阅读这里更多

我个人发现javascript代理在静态Web服务,验证,监视异步功能中非常有用。 我将探索更多。

旁注 :可以优化所使用的示例。

这是我关于medium的第一篇文章,或者我应该说新的写作旅程开始了。 😄

我很高兴收到任何正面或负面的反馈。

如果您喜欢这篇文章,请推荐并分享以帮助其他人找到它!

From: https://hackernoon.com/why-to-use-javascript-proxy-5cdc69d943e3

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值