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 相关文章推荐
创建公共调用 jQuery Ajax 带返回值
Aug 01 Javascript
JavaScript判断访问的来源是手机还是电脑,用的哪种浏览器
Dec 12 Javascript
DOM 事件流详解
Jan 20 Javascript
jQuery判断指定id的对象是否存在的方法
May 22 Javascript
使用Vue自定义数字键盘组件(体验度极好)
Dec 19 Javascript
Element-UI Table组件上添加列拖拽效果实现方法
Apr 14 Javascript
vue多页面开发和打包正确处理方法
Apr 20 Javascript
如何自动化部署项目?折腾服务器之旅~
Apr 16 Javascript
package.json配置文件构成详解
Aug 27 Javascript
解决vue请求接口第一次成功,第二次失败问题
Sep 08 Javascript
vue-router 按需加载 component: () =&gt; import() 报错的解决
Sep 22 Javascript
vue form表单post请求结合Servlet实现文件上传功能
Jan 22 Vue.js
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
重新封装zend_soap实现http连接安全认证的php代码
2011/01/12 PHP
PHP学习笔记 用户注册模块用户类以及验证码类
2011/09/20 PHP
php FLEA中二叉树数组的遍历输出
2012/09/26 PHP
PHP数据类型之整数类型、浮点数的介绍
2013/04/28 PHP
php setcookie函数的参数说明及其用法
2014/04/20 PHP
PHP入门教程之表单与验证实例详解
2016/09/11 PHP
PHP生成word文档的三种实现方式
2016/11/14 PHP
解决Laravel5.2 Auth认证退出失效的问题
2019/10/14 PHP
Laravel框架自定义分页样式操作示例
2020/01/26 PHP
jQuery使用手册之三 CSS操作
2007/03/24 Javascript
Javascript+XMLHttpRequest+asp.net无刷新读取数据库数据
2009/08/09 Javascript
使用ExtJS技术实现的拖动树结点
2010/08/05 Javascript
JQuery for与each性能比较分析
2013/05/14 Javascript
JS实现模仿微博发布效果实例代码
2013/12/16 Javascript
Jquery给基本控件的取值、赋值示例
2014/05/23 Javascript
使用vue.js开发时一些注意事项
2016/04/27 Javascript
基于Bootstrap实现图片轮播效果
2016/05/22 Javascript
AngularJs  Understanding Angular Templates
2016/09/02 Javascript
Javascript 实现计算器时间功能详解及实例(二)
2017/01/08 Javascript
JS中使用media实现响应式布局
2017/08/04 Javascript
vue+iview写个弹框的示例代码
2017/12/05 Javascript
JavaScript定时器设置、使用与倒计时案例详解
2019/07/08 Javascript
js实现旋转木马轮播图效果
2020/01/10 Javascript
浅谈在vue-cli3项目中解决动态引入图片img404的问题
2020/08/04 Javascript
Python中内置的日志模块logging用法详解
2016/07/12 Python
Python使用分布式锁的代码演示示例
2018/07/30 Python
pandas DataFrame的修改方法(值、列、索引)
2019/08/02 Python
Python读取分割压缩TXT文本文件实例
2020/02/14 Python
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
地方白酒代理协议书
2014/10/25 职场文书
地震慰问信
2015/02/14 职场文书
教师师德表现自我评价
2015/03/05 职场文书
放假通知范文
2015/04/14 职场文书
小学安全工作总结2015
2015/05/18 职场文书
sql通过日期判断年龄函数的示例代码
2021/07/16 SQL Server
Kubernetes中Deployment的升级与回滚
2022/04/01 Servers