我的javascript 函数链之演变

 更新时间:2011年04月07日 22:10:29   作者:  
我的javascript 函数链之演变,需要的朋友可以参考下。
最易读版
复制代码 代码如下:

function chain(obj){
function fun(){
if (arguments.length == 0){
return fun.obj;
}
var methodName = arguments[0], methodArgs = [].slice.call(arguments,1);
fun.obj[methodName].apply(fun.obj,methodArgs);
return fun;
}
fun.obj = obj;
return fun;
}

易读版
复制代码 代码如下:

function chain(obj){
return function(){
var Self = arguments.callee; Self.obj = obj;
if(arguments.length==0){
return Self.obj;
}
var methodName = arguments[0], methodArgs = [].slice.call(arguments,1);
Self.obj[methodName].apply(Self.obj,methodArgs);
return Self;
}
}

精简版
复制代码 代码如下:

function chain(obj){
return function(){
var Self = arguments.callee; Self.obj = obj;
if(arguments.length==0){
return Self.obj;
}
Self.obj[arguments[0]].apply(Self.obj,[].slice.call(arguments,1));
return Self;
}
}

调用
复制代码 代码如下:

chain(obj)
(method1,arg1)
(method2,arg2)
(method3,arg3)
...

相关文章

  • js实现无缝滚动图

    js实现无缝滚动图

    本文主要分享了js实现无缝滚动图的示例代码,具有很好的参考价值,下面跟着小编一起来看下吧
    2017-02-02
  • JavaScript中好用的数组对象排序方法分享

    JavaScript中好用的数组对象排序方法分享

    在日常工作中,我们经常需要对数组对象进行排序,尤其是在处理数据可视化需求中。本文将介绍一些简单而又实用的方法,帮助你实现对数组对象的某几个 key 进行排序
    2023-05-05
  • 一看就懂的i++和++i示例代码详解

    一看就懂的i++和++i示例代码详解

    这篇文章主要介绍了i++和++i区别详解,本文通过示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • 如何利用Promises编写更优雅的JavaScript代码

    如何利用Promises编写更优雅的JavaScript代码

    如何利用Promises编写更优雅的JavaScript代码?下面小编就为大家带来一篇用Promises编写更优雅的JavaScript代码。希望对大家有所帮助。一起跟随小编过来看看吧
    2016-05-05
  • JavaScript逆向分析instagram登入过程

    JavaScript逆向分析instagram登入过程

    这篇文章主要介绍了JavaScript逆向分析instagram登入过程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • Echarts图表位置调整的图文教程

    Echarts图表位置调整的图文教程

    实际过程中你会发现图表在div中的位置不太理想,这时怎么去调整呢?下面这篇文章主要给大家介绍了关于Echarts图表位置调整的相关资料,需要的朋友可以参考下
    2022-10-10
  • JavaScript中数组Array.sort()排序方法详解

    JavaScript中数组Array.sort()排序方法详解

    本篇文章主要介绍了JavaScript中数组Array.sort()的排序方法。具有很好的参考价值,下面跟着小编一起来看下吧
    2017-03-03
  • css样式标签和js语法属性区别

    css样式标签和js语法属性区别

    css样式标签和js语法属性区别。需要的朋友可以过来参考下,希望对大家有所帮助
    2013-11-11
  • JavaScript实现的数字与字符串转换功能示例

    JavaScript实现的数字与字符串转换功能示例

    这篇文章主要介绍了JavaScript实现的数字与字符串转换功能,涉及javascript数字、字符串等运算与转换相关操作技巧,需要的朋友可以参考下
    2017-08-08
  • Bootstrap table表格简单操作

    Bootstrap table表格简单操作

    这篇文章主要为大家详细介绍了Bootstrap table表格简单操作的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-02-02

最新评论