js 自定义的相当于LIST的对象

function   Vector()
{
this.data = new Array();
this.add = Vector_add;
this.remove = Vector_remove;
this.elementAt = Vector_elementAt;
this.setElementAt = Vector_setElementAt;
this.insert = Vector_insert;
this.contains = Vector_contains;
this.length = Vector_length;
this.toString = Vector_toString;
}

function Vector_add( item )
{
this.data[ this.data.length ] = item;
}

function Vector_remove( index )
{
var data = this.data;
data[ index ] = null;
var tmpdata = new Array();
var newindex = 0;
for( var i = 0; i < data.length; i++ )
{
if( data[ i ] != null )
{
tmpdata[ newindex ] = data[ i ];
newindex++;
}
}
this.data = tmpdata;
}

function Vector_removeItem( item )
{
var data = this.data;
var tmpdata = new Array();
var newindex = 0;
for( var i = 0; i < data.length; i++ )
{
if( data[ i ] != item )
{
tmpdata[ newindex ] = data[ i ];
}
newindex++;
}
this.data = tmpdata;
}

function Vector_elementAt( index )
{
return this.data[ index ];
}

function Vector_setElementAt( index, item )
{
this.data[ index ] = item;
}

function Vector_insert( index, item )
{
if( index == this.data.length )
{
this.add( item );
return;
}
var data = this.data;
var tmpdata = new Array();
var newindex = 0;
for( var i = 0; i < data.length; i++ )
{
if( i == index )
{
tmpdata[ i ] = item;
newindex++;
}
tmpdata[ newindex ] = data[ i ];
newindex++;
}
this.data = tmpdata;
}

function Vector_contains( item )
{
for( var i = 0; i < this.data.length; i++ )
{
if( this.data[i] == item )
{
return true;
}
}
return false;
}

function Vector_length()
{
return this.data.length;
}

function Vector_toString()
{
var dataString = "[ ";
var data = this.data;
for( var i = 0; i < data.length; i++ )
{
dataString += data[i] + " ";
}
dataString += "] ";
return dataString;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值