JavaScript实现Iterator模式实例分析

 更新时间:2015年06月09日 11:32:19   作者:McJeremy&Fan  
这篇文章主要介绍了JavaScript实现Iterator模式,实例分析了Iterator模式的相关实现技巧,需要的朋友可以参考下

本文实例讲述了JavaScript实现Iterator模式的方法。分享给大家供大家参考。具体分析如下:

经常在网上看到有不少JS设计模式的示例。这里写一下JavaScript实现Iterator模式的方法,记录在此,仅作备忘:

<!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>

希望本文所述对大家的javascript程序设计有所帮助。

相关文章

  • 微信小程序添加插屏广告并设置显示频率(一天一次)

    微信小程序添加插屏广告并设置显示频率(一天一次)

    微信小程序今年新上线了插屏广告,设置和在代码库中接入都非常方便。今天通过本文给大家分享微信小程序添加插屏广告并设置显示频率(一天一次),需要的朋友可以参考下
    2019-12-12
  • echartjs实现cross十星辅助线实现示例详解

    echartjs实现cross十星辅助线实现示例详解

    这篇文章主要为大家介绍了echartjs实现cross十星辅助线实现示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-12-12
  • JS弹出新窗口被拦截的解决方法

    JS弹出新窗口被拦截的解决方法

    使用js使用新窗口打开页面的时候,经常遇到被浏览器拦截的情况,怎么解决呢?下面小编通过两种情况分析并分别附有解决办法,对js弹出新窗口被拦截感兴趣的朋友一起学习吧
    2016-08-08
  • javascript内置对象操作详解

    javascript内置对象操作详解

    这篇文章主要介绍了javascript内置对象操作详解,需要的朋友可以参考下
    2015-02-02
  • js+css实现三级导航菜单

    js+css实现三级导航菜单

    这篇文章主要为大家详细介绍了js+css实现三级导航菜单,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • 完美解决手机网页中输入框被输入法遮挡的问题

    完美解决手机网页中输入框被输入法遮挡的问题

    下面小编就为大家分享一篇完美解决手机网页中输入框被输入法遮挡的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-12-12
  • JS取数字小数点后两位或n位的简单方法

    JS取数字小数点后两位或n位的简单方法

    下面小编就为大家带来一篇JS取数字小数点后两位或n位的简单方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-10-10
  • 基于JavaScript实现每日签到打卡轨迹功能

    基于JavaScript实现每日签到打卡轨迹功能

    这篇文章主要为大家详细介绍了基于JavaScript实现每日签到打卡轨迹功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-11-11
  • JavaScript获取一个范围内日期的方法

    JavaScript获取一个范围内日期的方法

    这篇文章主要介绍了JavaScript获取一个范围内日期的方法,涉及javascript操作日期的相关技巧,需要的朋友可以参考下
    2015-04-04
  • 一文详解如何用原型链的方式实现JS继承

    一文详解如何用原型链的方式实现JS继承

    JavaScript中,每当创建一个对象,都会给这个对象提供一个内置对象 [[Prototype]] 。这个对象就是原型对象,[[Prototype]] 的层层嵌套就形成了原型链。本文将详细讲解如何用原型链的方式实现一个 JS 继承,感兴趣的可以了解下
    2022-04-04

最新评论