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 相关文章推荐
sina的lightbox效果。
Jan 09 Javascript
javascript动画浅析
Aug 30 Javascript
Javascript学习笔记之相等符号与严格相等符号
Nov 23 Javascript
js原生跨域_用script标签的简单实现
Sep 24 Javascript
基于JavaScript实现全选、不选和反选效果
Feb 15 Javascript
vue watch关于对象内的属性监听
Apr 22 Javascript
关于Vue源码vm.$watch()内部原理详解
Apr 26 Javascript
关于ckeditor在bootstrap中modal中弹框无法输入的解决方法
Sep 11 Javascript
基于aotu.js实现微信自动添加通讯录中的联系人功能
May 28 Javascript
vue使用nprogress加载路由进度条的方法
Jun 04 Javascript
JS事件循环机制event loop宏任务微任务原理解析
Aug 04 Javascript
JavaScript 防盗链的原理以及破解方法
Dec 29 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
IIS环境下快速安装、配置和调试PHP5.2.0
2006/12/17 PHP
剖析 PHP 中的输出缓冲
2006/12/21 PHP
PHP计算指定日期所在周的开始和结束日期的方法
2015/03/24 PHP
PHP中static关键字以及与self关键字的区别
2015/07/01 PHP
php mysql数据库操作类(实例讲解)
2017/08/06 PHP
Jquery公告滚动+AJAX后台得到数据
2011/04/14 Javascript
javascript的渐进增强与平稳退化浅谈
2013/11/12 Javascript
jQuery事件用法实例汇总
2014/08/29 Javascript
Javascript获取表单名称(name)的方法
2015/04/02 Javascript
JavaScript各类型的关系图解
2015/10/16 Javascript
基于jQuery实现二级下拉菜单效果
2016/02/01 Javascript
全面理解闭包机制
2016/07/11 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
快速解决js中window.location.href不工作的问题
2016/11/02 Javascript
浅析Ajax语法
2016/12/05 Javascript
详解vue-Resource(与后端数据交互)
2017/01/16 Javascript
JS简单获取当前年月日星期的方法示例
2017/02/07 Javascript
select获取下拉框的值 下拉框默认选中方法
2018/02/28 Javascript
基于jQuery拖拽事件的封装
2020/11/29 jQuery
[02:16]深扒TI7聊天轮盘语音出处2
2017/05/11 DOTA
python列表生成式与列表生成器的使用
2018/02/23 Python
python实现飞机大战微信小游戏
2020/03/21 Python
Python利用requests模块下载图片实例代码
2019/08/12 Python
softmax及python实现过程解析
2019/09/30 Python
django restframework serializer 增加自定义字段操作
2020/07/15 Python
html5理解head_动力节点Java学院整理
2017/07/13 HTML / CSS
导出HTML5 Canvas图片并上传服务器功能
2019/08/16 HTML / CSS
俄罗斯旅游网站:Tripadvisor俄罗斯
2017/03/21 全球购物
团员个人年度总结
2015/02/26 职场文书
2015年社区居委会工作总结
2015/05/18 职场文书
刑事上诉状(无罪)
2015/05/23 职场文书
晚会主持人开场白台词
2015/05/28 职场文书
常住证明范本
2015/06/23 职场文书
中国梦宣传标语口号
2015/12/26 职场文书
一文搞懂python异常处理、模块与包
2021/06/26 Python