Prototype通用性方法-Try.these(Function...) -> firstOKResult
Posted on 2008-04-08 13:28 尹合磊 阅读(215) 评论(0) 编辑 收藏 举报Try.these() 方法使得实现当你想调用不同的方法直到其中的一个成功正常的这种需求变得非常容易, 他把一系列的方法作为参数并且按顺序的一个一个的执行这些方法直到其中的一个成功执行,返回成功执行的那个方法的返回值。
在下面的例子中, xmlNode.text在一些浏览器中好用,但是xmlNode.textContent在另一些浏览器中正常工作。 使用Try.these()方法我们可以得到正常工作的那个方法的返回值。
1 <script>
2 function getXmlNodeValue(xmlNode){
3 return Try.these(
4 function() {return xmlNode.text;},
5 function() {return xmlNode.textContent;)
6 );
7 }
8 </script>
2 function getXmlNodeValue(xmlNode){
3 return Try.these(
4 function() {return xmlNode.text;},
5 function() {return xmlNode.textContent;)
6 );
7 }
8 </script>