JavaScript实现Iterator模式实例分析
作者:bea
本文实例讲述了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"&
本文实例讲述了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程序设计有所帮助。
有用 | 无用
经常在网上看到有不少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动画
- JavaScript操作XML文件之XML读取方法
- JavaScript检查数字是否为整数或浮点数的方法
- jQuery取消ajax请求的方法
- JavaScript动态添加style节点的方法
- jQuery实现将页面上HTML标签换成另外标签的方法
- Javascript实现div的toggle效果实例分析
- js获取字符串字节数方法小结
- Javascript对象Clone实例分析
- JS动态创建DOM元素的方法
- JavaScript获取数组最小值和最大值的方法
- JavaScript获取两个数组交集的方法
- JavaScript实现函数返回多个值的方法
- JavaScript中的getDay()方法使用详解
- JavaScript中用getDate()方法返回指定日期的教程
- JavaScript的Date()方法使用详解
- 简介JavaScript中的unshift()方法的使用
- JavaScript中的splice()方法使用详解