我的javascript 函数链之演变_javascript技巧
程序员文章站
2022-06-03 19:22:03
...
最易读版
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)
...
复制代码 代码如下:
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)
...
上一篇: Android 模块化的基本思路探索实践
下一篇: 为什么$_POST无法取到值?
推荐阅读
-
javascript基于原型链的继承及call和apply函数用法分析
-
【JavaScript系列】你应掌握的JavaScript之函数(一)
-
javascript 开发之百度地图使用到的js函数整理
-
Javascript调试之console对象——你不知道的一些小技巧
-
JavaScript中构造函数与原型链之间的关系详解
-
前端笔记知识点整合之JavaScript面向对象(一)Object&函数上下文&构造函数&原型链
-
JavaScript调试之console.log调试的一个小技巧分享
-
Powershell小技巧之使用Jint引擎在PowerShell中执行Javascript函数
-
你不知道的JavaScript之原生函数
-
我的javascript学习之路(二) 对象之定义