javascript写的一个链表实现代码


Posted in Javascript onOctober 25, 2009

本来要用Array来保存数据的,没试过用JS来数据结构,就用JS来试试吧。
JS效率真的很低一个链表装1000个对象浏览器就提示运行缓慢了。
之前觉得AJAX3D挺用前景的,现在看来还没有流行就要夭折了。用delphi开发的游戏人们都觉得太慢了,何况用JS。
下面是我实现的一个链表:

/*@author eric 
*@mail shmilyhe@163.com 
*blog.csdn.net/shmilyhe 
*/ 
<script> 
function Student(no,name){ 
this.id=no; 
this.name=name; 
this.scores={chinese:0,math:0,english:0}; 
} 
function List(){ 
this.head=null; 
this.end=null; 
this.curr=null; 
} 
List.prototype.add=function(o){ 
var tem={ob:o,next:null}; 
if(this.head){ 
this.end.next=tem; 
this.end=tem; 
}else{ 
this.head=tem; 
this.end=tem; 
this.curr=tem; 
} 
} 
List.prototype.del=function(inde){ 
var n=this.head; 
for(var i=0;i<inde;i++){ 
n=n.next; 
} 
n.next=n.next.next?n.next.next:null; 
} 
List.prototype.next=function(){ 
var te=null; 
if(this.curr){ 
te=this.curr.ob; this.curr=this.curr.next;} 
return te; 
} 
List.prototype.hasnext=function(){ 
if(this.curr.ob!=null)return true; 
return false; 
} 
var list=new List(); 
for(var i=0;i<1000;i++){ 
list.add(new Student(i,'name'+i)); 
} 
var i=0; 
while(list.hasnext()){ 
document.writeln(list.next().name); 
if(i==10){document.writeln('<br/>'); i=0;} 
i++; 
} 
</script>
Javascript 相关文章推荐
短信提示使用 特效
Jan 19 Javascript
JS操作图片(增,删,改) 例子
Apr 17 Javascript
Javascript事件实例详解
Nov 06 Javascript
js实现类似新浪微博首页内容渐显效果的方法
Apr 10 Javascript
js实现网页多级级联菜单代码
Aug 20 Javascript
基于Arcgis for javascript实现百度地图ABCD marker的效果
Sep 12 Javascript
javascript编程异常处理实例小结
Nov 30 Javascript
easyui combogrid实现本地模糊搜索过滤多列
May 13 Javascript
简单实现jQuery手风琴效果
Aug 18 jQuery
详解vue父子组件关于模态框状态的绑定方案
Jun 05 Javascript
通过实例了解js函数中参数的传递
Jun 15 Javascript
vue组件系列之TagsInput详解
May 14 Javascript
JavaScript的变量作用域深入理解
Oct 25 #Javascript
理解JavaScript变量作用域更轻松
Oct 25 #Javascript
理解 JavaScript 预解析
Oct 25 #Javascript
WEB页子窗口(showModalDialog和showModelessDialog)使用说明
Oct 25 #Javascript
JavaScript弹簧振子超简洁版 完全符合能量守恒,胡克定理
Oct 25 #Javascript
javascript window对象属性整理
Oct 24 #Javascript
Javascript 模式实例 观察者模式
Oct 24 #Javascript
You might like
PHP中的正则表达式函数介绍
2012/02/27 PHP
PHP Curl多线程原理实例详解
2013/11/06 PHP
php计算程序运行时间的简单例子分享
2014/05/10 PHP
yii实现级联下拉菜单的方法
2014/07/31 PHP
Iframe thickbox2.0使用的方法
2009/03/05 Javascript
JavaScript定义类或函数的几种方式小结
2011/01/09 Javascript
js的压缩及jquery压缩探讨(提高页面加载性能/保护劳动成果)
2013/01/29 Javascript
Jquery动态更改一张位图的src与Attr的使用
2013/07/31 Javascript
onmouseover和onmouseout的一些问题思考
2013/08/14 Javascript
JsRender for object语法简介
2014/10/31 Javascript
IE6兼容透明背景图片及解决方案
2015/08/19 Javascript
基于JavaScript实现瀑布流布局(二)
2016/01/26 Javascript
简单实现的JQuery文本框水印插件
2016/06/14 Javascript
如何在JS中实现相互转换XML和JSON
2016/07/19 Javascript
nodejs实现邮件发送服务实例分享
2017/03/29 NodeJs
使用layer模态框给新页面传值的方法
2019/09/27 Javascript
javascript中的with语句学习笔记及用法
2020/02/17 Javascript
Python使用progressbar模块实现的显示进度条功能
2018/05/31 Python
python中正则表达式 re.findall 用法
2018/10/23 Python
django多个APP的urls设置方法(views重复问题解决)
2019/07/19 Python
python框架flask表单实现详解
2019/11/04 Python
numpy数组做图片拼接的实现(concatenate、vstack、hstack)
2019/11/08 Python
python 实现return返回多个值
2019/11/19 Python
解决Keras TensorFlow 混编中 trainable=False设置无效问题
2020/06/28 Python
Matplotlib 绘制饼图解决文字重叠的方法
2020/07/24 Python
python 使用cycle构造无限循环迭代器
2020/12/02 Python
HTML5拖放API实现自动生成相框功能
2020/04/07 HTML / CSS
最新大学毕业求职简历的自我评价
2013/10/18 职场文书
五一家具促销方案
2014/01/10 职场文书
《台湾的蝴蝶谷》教学反思
2014/02/20 职场文书
个人培训自我鉴定
2014/03/28 职场文书
创建无烟单位实施方案
2014/03/29 职场文书
企业党支部工作总结2015
2015/05/21 职场文书
浅谈如何写好演讲稿?
2019/06/12 职场文书
python实现会员管理系统
2022/03/18 Python
VUE使用draggable实现组件拖拽
2022/04/06 Vue.js