zoukankan      html  css  js  c++  java
  • JavaScript实现Iterator模式

    在网上看到有不少JS设计模式的示例。

    今天参照:

    http://www.cnblogs.com/iloveu/archive/2009/03/31/1426234.html

    写了一下,记录在此,仅作备忘:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">

    <head>
    <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
    <title>无标题 1</title>
    </head>

    <body>
    <script type="text/javascript" language="javascript">

     
    ///@定义一个迭代器对象
     function Iterator(arr)
     
    {
       
    this.obj=arr;
       
    this.length=this.obj.length;
       
    this.index=0//从前往后
     }

     
     Iterator.prototype
    =
     
    {
       current:
    function()
       
    {
         
    return this.obj[this.index-1];
       }
    ,
       first:
    function()
       
    {
         
    return this.obj[0];
       }
    ,
       last:
    function()
       
    {
         
    return this.obj[this.length-1];
       }
    ,
       hasNext:
    function()
       
    {
         
    this.index=this.index+1;
         
    if(this.index>this.length || null==this.obj[this.index-1])
           
    return false;
         
    return true;
       }

     }

     Array.prototype.createIterator
    =function()
     
    {
       
    return new Iterator(this);
     }

     
     
    var test=['abc1','abc2','abc3'];
     
    var iter=test.createIterator();
     
    while(iter.hasNext())
     
    {
        
    var tempArr=iter.current();
        alert(tempArr);
     }

    </script>
    </body>

    </html>
  • 相关阅读:
    阿里云配置学习
    华为机试练习代码
    微信公众号开发
    给div加滚动条
    Nolia 给CC添加过滤器
    算法理解
    Jquery常用功能
    day 2Linux软件从主机安装到服务器和安装JDK软件
    10月11 一些小的东西
    9月30 json工具类
  • 原文地址:https://www.cnblogs.com/McJeremy/p/1438149.html
Copyright © 2011-2022 走看看