<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<META NAME="Generator" CONTENT="EditPlus">
<META NAME="Author" CONTENT="">
<META NAME="Keywords" CONTENT="">
<META NAME="Description" CONTENT="">
<script type="text/javascript">
//Iterator 迭代器原型
function Iterator(){}
Iterator.prototype.next = null;
Iterator.prototype.hasNext = null;
Iterator.prototype.toArray = function(){
var _set = [this.next()];
while(this.hasNext())
{
_set.push(this.next());
}
return _set;
}
Array.prototype.iterator = function() {
var _it = new Iterator();
var _cursor = 0;
var _arr = this;
_it.next = function(){
return _arr[_cursor++];
}
_it.hasNext = function(){
return _cursor <= _arr.length - 1;
}
return _it;
}
//于是我们可以用迭代器遍历数组了,就象下面这样:
var arr = [1,2,3,4];
var it = arr.iterator();
//alert(it.toArray());
while(it.hasNext())
{
alert(it.next());
}
</script>
</HEAD>
<BODY>
</BODY>
</HTML>
javascript实现Iterator
最新推荐文章于 2024-03-19 14:45:47 发布