当前位置:  开发笔记 > 编程语言 > 正文

JavaScript对象方法链接:有用吗?

如何解决《JavaScript对象方法链接:有用吗?》经验,为你挑选了4个好方法。

所以...在JavaScript中乱搞一个对我来说很新的想法,让Object的方法返回它们是方法的Object; 这导致了可链接性.我的问题是:这怎么有用?我把它扔在一起测试基本工作:


这显然不是一个恶意高效的实例,人们会使用这个概念,所以你能指出我做的事情吗(除了jQuery,请)?



1> jonstjohn..:

嗯,这是一个不太现实的适用例子,但我想你会明白这个想法.如果允许您对对象执行许多不同的操作,并提供方便.

var truck = function() {

    this.turnLeft = function {

       // turn left
       return this;

    }

    this.turnRight = function {

       // turn right
       return this;

    }

    this.goReallyFast = function {

       // go fast!
       return this;

    }

};

// My get-away plan
var myTruck = new truck();
myTruck.turnLeft().turnRight().goReallyFast();



2> dfasdljkhfas..:

流畅的界面 - http://en.wikipedia.org/wiki/Fluent_interface

是的,我认为它可能非常有用,但任何设计模式都应该只在需要时使用

编辑:这是使用流畅界面的c#中的twitter客户端api - http://code.google.com/p/tweetsharp/



3> Anirvan..:

对于一个非常不同的(非OO)示例,链接有点类似于Unix管道.Unix管道的每一步都返回完整(修改)的内容,适合发送到下一步:

cat file1 file2 | sort -n | awk '{print $2}' | sed 's/@/ at /g'



4> Joel Coehoor..:

一个有用的例子就是你的问题略有不同 - 你可以将对象设计成不可变的,而不是返回相同的对象.然后你的函数将返回一个相同类型的新实例,但已经适当地设置了属性.

这有许多实际应用,特别是在函数式编程领域.

推荐阅读
惬听风吟jyy_802
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有