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 相关文章推荐
Javascript中暂停功能的实现代码
Mar 04 Javascript
dojo 之基础篇
Mar 24 Javascript
关于JavaScript的面向对象和继承有利新手学习
Jan 11 Javascript
一张表格告诉你windows.onload()与$(document).ready()的区别
May 16 Javascript
jquery checkbox的相关操作总结
Oct 17 Javascript
jQuery插件zTree实现删除树子节点的方法示例
Mar 08 Javascript
jQuery实现滚动效果
Nov 17 jQuery
vue实现的上传图片到数据库并显示到页面功能示例
Mar 17 Javascript
angularJs利用$scope处理升降序的方法
Oct 08 Javascript
JS实现简单的表格增删
Jan 16 Javascript
js get和post请求实现代码解析
Feb 06 Javascript
JS 数组和对象的深拷贝操作示例
Jun 06 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写的资源下载防盗链类分享
2014/05/12 PHP
PHP下载远程文件到本地存储的方法
2015/03/24 PHP
启用Csrf后POST数据时出现的400错误
2015/07/05 PHP
yii分页组件用法实例分析
2015/12/28 PHP
php resizeimage 部分jpg文件 生成缩略图失败的原因分析及解决办法
2016/03/23 PHP
利用PHP抓取百度阅读的方法示例
2016/12/18 PHP
JavaScript 密码强度判断代码
2009/09/05 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
jQuery中attr()与prop()函数用法实例详解(附用法区别)
2015/12/29 Javascript
JavaScript中的继承之类继承
2016/05/01 Javascript
AngularJS入门教程之控制器详解
2016/07/27 Javascript
C#实现将一个字符转换为整数
2017/12/12 Javascript
Vue项目服务器部署之子目录部署方法
2019/05/12 Javascript
Javascript幻灯片播放功能实现过程解析
2020/05/07 Javascript
[48:47]VGJ.S vs NB 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
python数据结构之二叉树的遍历实例
2014/04/29 Python
Python 描述符(Descriptor)入门
2016/11/20 Python
Python基于回溯法子集树模板解决马踏棋盘问题示例
2017/09/11 Python
详解python使用pip安装第三方库(工具包)速度慢、超时、失败的解决方案
2018/12/02 Python
Python玩转PDF的各种骚操作
2019/05/06 Python
如何基于Python批量下载音乐
2019/11/11 Python
tensorflow实现打印ckpt模型保存下的变量名称及变量值
2020/01/04 Python
使用Python实现将多表分批次从数据库导出到Excel
2020/05/15 Python
Python使用pickle进行序列化和反序列化的示例代码
2020/09/22 Python
CSS3 网页下拉菜单代码解释 中文翻译
2010/02/27 HTML / CSS
深入浅析HTML5中的article和section的区别
2018/05/15 HTML / CSS
高档奢华时装在线目的地:FORWARD by elyse walker
2017/10/16 全球购物
微软中国官方商城:Microsoft Store中国
2018/10/12 全球购物
捷克多品牌在线时尚商店:ANSWEAR.cz
2020/10/03 全球购物
水产养殖学应届生求职信
2013/09/29 职场文书
预备党员思想汇报范文
2013/12/29 职场文书
公务员转正考察材料
2014/02/07 职场文书
素质拓展训练感想
2015/08/07 职场文书
python tqdm用法及实例详解
2021/06/16 Python
CPU不支持Windows11系统怎么办
2021/11/21 数码科技
python对文档中元素删除,替换操作
2022/04/02 Python