JavaScript实现的ArrayList类[原创][1]

[入库:2005年8月18日] [更新:2007年3月25日]

本文简介:选择自 yoinn 的 blog

/**********************************************************
 * javascript实现的arraylist类
 *
 * @author       yoinn {yoinn@21cn.com}
 * @version      $revision: 0.5 $ $date: 2004/09/28 15:00:00 $
 * @description
 *               method:
 *                      add(element);
 *                      addelementat(index, element);
 *                      contains(element);
 *                      get(index);
 *                      isempty(index);
 *                      indexof(element);
 *                      lastindexof(element);
 *                      remove()
 *                      setelementat(index, element);
 *                      size();
 *                      tostring();
 * @example
 *               var arrlist = new arraylist();
 *               //var arrlist = new arraylist(10);
 *               arrlist.add("000");
 *               arrlist.add("001");
 *               arrlist.add("002");
 *
 *********************************************************/
var arraylist = function(){

    var args = arraylist.arguments;
   
    var initialcapacity = 10;
   
    if( args!=null && args.length>0 ){
        initialcapacity = args[0];
    }

    var elementdata = new array(initialcapacity);
    var elementcount = 0;

    this.size = function(){
        return elementcount;
    }

    this.add = function (element) {
        //alert("add");
        ensurecapacity(elementcount + 1);
        elementdata[elementcount++] = element;
        return true;
    }

    this.addelementat = function (index, element ){
        //alert("addelementat");
        if ( index > elementcount || index < 0 ){
            alert( "indexoutofboundsexception, index: " + index + ", size: " + elementcount );
            return;
            //throw (new error(-1,"indexoutofboundsexception, index: "+index+", size: " + elementcount));
        }
        ensurecapacity( elementcount+1 );
        for( var i=elementcount+1; i>index; i-- ){
            elementdata[i] = elementdata[i-1]
        }
        elementdata[index] = element;

本文关键:JavaScript实现的ArrayList类[原创]
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top