当前位置: 首页 > news >正文

【ES6】利用 Proxy实现函数名链式效果

利用 Proxy,可以将读取属性的操作(get),转变为执行某个函数,从而实现属性的链式操作。

var pipe = function (value) {var funcStack = [];var oproxy = new Proxy({} , {get : function (pipeObject, fnName) {if (fnName === 'get') {return funcStack.reduce(function (val, fn) {return fn(val);},value);}funcStack.push(window[fnName]);return oproxy;}});return oproxy;
}var double = n => n * 2;
var pow    = n => n * n;
var reverseInt = n => n.toString().split("").reverse().join("") | 0;pipe(3).double.pow.reverseInt.get; // 63

上面代码设置 Proxy 以后,达到了将函数名链式使用的效果。

http://www.lryc.cn/news/149566.html

相关文章:

  • hive部署
  • ip白名单之网段
  • PMP项目管理主要学习内容是什么?
  • 小米面试题——不用加减乘除计算两数之和
  • Mysql 日志管理 数据备份
  • Java小记-腾讯2020校招-后台-逛街
  • FFmpeg5.0源码阅读——FFmpeg大体框架
  • 【算法刷题之字符串篇】
  • js中forEach和map的区别:forEach不会改变原数组,而map会改变数组?错了错了
  • 深度对话:从底层看Sui设计理念及网络规模扩展
  • 2.单链表练习
  • Wordpress 安装插件和主题报错
  • Spring Cloud 2022.x版本使用gateway和nacos实现动态路由和负载均衡
  • CSS中如何隐藏元素但保留其占位空间(display:none vs visibility:hidden)?
  • 无涯教程-机器学习 - 数据可视化
  • springboot设置日志输出级别
  • buildAdmin的使用笔记
  • RealVNC配置自定义分辨率(AlmaLinux 8)
  • LA@特征值和特征向量的性质
  • Springboot使用kafka事务-生产者方
  • 您的计算机已被.halo勒索病毒感染?恢复您的数据的方法在这里!
  • 生成式AI颠覆传统数据库的十种方式
  • el-date-picker自定义只能选中当前月份和半年内月份等
  • Pyecharts教程(十一):使用Pyecharts绘制带有滑动数据缩放功能的K线图
  • 2023年高教社杯数学建模思路 - 案例:ID3-决策树分类算法
  • POJ 3273 Monthly Expense 二分
  • 图论(基础)
  • docker的运行原理
  • vue自定义键盘
  • k8s 安装 kubernetes安装教程 虚拟机安装k8s centos7安装k8s kuberadmin安装k8s k8s工具安装 k8s安装前配置参数