javascript写的一个链表实现代码

 更新时间:2009年10月25日 17:35:43   作者:  
今天在百度上看到有人问怎么用Javascript 写一个学生管理系统。个人认为没有什么实现价值。无聊练练手吧,很久没写JS了。
本来要用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实现检测用户是否在线功能

    利用JavaScript实现检测用户是否在线功能

    这篇文章主要为大家详细介绍了如何利用JavaScript实现检测用户是否在线功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下
    2022-12-12
  • 基于webpack.config.js 参数详解

    基于webpack.config.js 参数详解

    下面小编就为大家分享一篇基于webpack.config.js 参数详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-03-03
  • 基于require.js的使用(实例讲解)

    基于require.js的使用(实例讲解)

    下面小编就为大家带来一篇基于require.js的使用(实例讲解)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • 关于moment.js的常用方法及使用说明

    关于moment.js的常用方法及使用说明

    这篇文章主要介绍了关于moment.js的常用方法及说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-12-12
  • 利用JavaScript实现创建虚拟键盘的示例代码

    利用JavaScript实现创建虚拟键盘的示例代码

    这篇文章主要为大家详细介绍了如何利用JavaScript实现创建虚拟键盘,文中的示例代码讲解详细,对我们学习JavaScript有一定帮助,需要的可以参考一下
    2022-09-09
  • 微信小程序如何获取用户信息

    微信小程序如何获取用户信息

    这篇文章主要为大家详细介绍了微信小程序如何获取用户信息,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • js如何给json对象添加、删除、修改属性

    js如何给json对象添加、删除、修改属性

    这篇文章主要介绍了js如何给json对象添加、删除、修改属性问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • JavaScript也谈内存优化

    JavaScript也谈内存优化

    这篇文章主要介绍了JavaScript内存优化,主要是javascript的应用越来越复杂,内存问题所导致的卡顿、内存溢出等现象也变得不再陌生,所以说也谈内存优化,需要的朋友可以参考下
    2014-06-06
  • JS中的substring和substr函数的区别说明

    JS中的substring和substr函数的区别说明

    stringObject.substring(start,stop)与substr(start,length)有什么区别,下面为大家详细介绍下,感兴趣的朋友可以参考下哈
    2013-05-05
  • 微信小程序实现验证码获取倒计时效果

    微信小程序实现验证码获取倒计时效果

    这篇文章主要为大家详细介绍了微信小程序实现验证码获取倒计时效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02

最新评论