JavaScript实现Iterator模式实例分析


Posted in Javascript onJune 09, 2015

本文实例讲述了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程序设计有所帮助。

Javascript 相关文章推荐
Locate a File Using a File Open Dialog Box
Jun 18 Javascript
jQuery formValidator表单验证插件开源了 含API帮助、源码、示例
Aug 14 Javascript
js验证电话号码与手机支持+86的正则表达式
Jan 23 Javascript
JavaScript中 ES6 generator数据类型详解
Aug 11 Javascript
微信小程序商城项目之淘宝分类入口(2)
Apr 17 Javascript
JavaScript运动框架 多值运动(四)
May 18 Javascript
详解React项目的服务端渲染改造(koa2+webpack3.11)
Mar 19 Javascript
JavaScript生成指定范围随机数和随机序列的方法
May 05 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
Aug 05 Javascript
原生JS实现动态添加新元素、删除元素方法
May 05 Javascript
在Express中提供静态文件的实现方法
Oct 17 Javascript
js+css3实现简单时钟特效
Sep 13 Javascript
JavaScript中用sort()方法对数组元素进行排序的操作
Jun 09 #Javascript
JavaScript数组迭代器实例分析
Jun 09 #Javascript
在Javascript中处理数组之toSource()方法的使用
Jun 09 #Javascript
JavaScript中的some()方法使用详解
Jun 09 #Javascript
详解JavaScript中shift()方法的使用
Jun 09 #Javascript
在JavaScript中处理数组之reverse()方法的使用
Jun 09 #Javascript
JavaScript中reduce()方法的使用详解
Jun 09 #Javascript
You might like
PHP文件下载实例代码浅析
2016/08/17 PHP
PHP框架laravel的.env文件配置教程
2017/06/07 PHP
php与阿里云短信接口接入操作案例分析
2020/05/27 PHP
雄兵连第三季海报曝光,艾妮熙德成主角,蔷薇新造型
2021/03/09 国漫
JavaScript脚本语言在网页中的简单应用
2007/05/13 Javascript
js的逻辑运算符 ||
2010/05/31 Javascript
js 编程笔记 无名函数
2011/06/28 Javascript
JS完整获取IE浏览器信息包括类型、版本、语言等等
2014/05/22 Javascript
js获取域名的方法
2015/01/27 Javascript
javascript上下方向键控制表格行选中并高亮显示的方法
2015/02/13 Javascript
JavaScript将XML转成JSON的方法
2015/03/12 Javascript
javascript中对Date类型的常用操作小结
2016/05/19 Javascript
self.attachevent is not a function的解决方法
2017/04/04 Javascript
浅谈在vue中用webpack打包之后运行文件的问题以及相关配置方法
2018/02/21 Javascript
利用adb shell和node.js实现抖音自动抢红包功能(推荐)
2018/02/22 Javascript
Vue CL3 配置路径别名详解
2019/05/30 Javascript
ES6基础之数组和对象的拓展实例详解
2019/08/22 Javascript
详解ES6 CLASS在微信小程序中的应用实例
2020/04/24 Javascript
JavaScript 绘制饼图的示例
2021/02/19 Javascript
python迭代器的使用方法实例
2013/11/21 Python
python使用nntp读取新闻组内容的方法
2015/05/08 Python
Python二分查找详解
2015/09/13 Python
Python解析树及树的遍历
2016/02/03 Python
使用python 爬虫抓站的一些技巧总结
2018/01/10 Python
PyQt5内嵌浏览器注入JavaScript脚本实现自动化操作的代码实例
2019/02/13 Python
Python collections.defaultdict模块用法详解
2020/06/18 Python
驴妈妈旅游网:中国新型的B2C旅游电子商务网站
2016/08/16 全球购物
IRO美国官网:法国服装品牌
2018/03/06 全球购物
物业管理员岗位职责范文
2013/11/25 职场文书
医学生自我鉴定范文
2014/03/26 职场文书
个人批评与自我批评材料
2014/10/17 职场文书
离婚被告答辩状
2015/05/22 职场文书
2015年度招聘工作总结
2015/05/28 职场文书
pytorch实现ResNet结构的实例代码
2021/05/17 Python
JS的深浅复制详细
2021/10/16 Javascript
PostGIS的安装与入门使用指南
2022/01/18 PostgreSQL