`

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;
}
分享到:
评论

相关推荐

    在django admin详情表单显示中添加自定义控件的实现

    模型视图通常用于展示详情(detail),即一条数据的所有信息,相当于一个包含各种字段的表单。要在详情视图中添加自定义控件,我们需要在`forms.py`中定义一个ModelForm,并对其中的字段进行定制。 以下是一个示例...

    DataBinding2使用手册

    'text': 'UserName', // 相当于 $(this).text(*) 'textFormat': '您好,医生{0}', // {0}占位符,对应text也要匹配字段,例如 "UserName,Age" =&gt; "您好,医生{0},医生{1}" 'textHandle': UserNameHandle, // ...

    Object Model sharepoint 实例

    - **SPListItem**:每个列表中的单个条目,相当于列表中的一个记录。 - **SPField**:定义列表列的类型,如文本、日期、数字等。 - **SPView**:定义用户查看列表数据的方式,包括排序、筛选和分组。 2. **应用...

    微信小程序:仿Github demo下载

    - **.wxss** 文件:页面样式文件,相当于CSS。 - **.js** 文件:页面逻辑文件,处理数据和事件。 - **.json** 文件:其他配置文件,如网络请求、数据库等。 3. 数据绑定与状态管理: - **数据绑定**:使用...

    史上最全的struts2标签

    &lt;s:checkboxlist name="interest" list="{'足球','篮球','排球','游泳'}" label="兴趣爱好"/&gt; ``` 9. **combobox 标签**: `&lt;s:combobox&gt;`创建一个组合框(下拉列表框和文本框)。如: ```jsp 请选择您喜欢...

    jQuery 模板

    4. **函数调用**:`${myFunction(data)}`,可以在模板中调用自定义函数。 **三、编译与执行模板** 使用jQuery的`.tmpl()`方法来编译并执行模板。例如: ```javascript var users = [ { Name: "张三", Email: ...

    JAVA上百实例源码以及开源项目源代码

    关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥...

    JSP基础语法知识(JSP语法(中华电脑书库_整理制作))

    - `&lt;%= ... %&gt;`: 输出表达式的结果到页面,相当于`out.println()`。 - `&lt;% ... %&gt;`: 可以执行任意的Java语句,但不会输出结果。 ### 4. JSP声明(Declarations) `! ... %&gt;`用于声明变量或方法,这些变量和方法在...

    Struts2标签库详解

    3. `&lt;s:include&gt;`:动态包含其他JSP页面,类似于JSP的`&lt;jsp:include&gt;`标签。 四、表单标签库 表单标签库是Struts2中最常用的,它提供了诸如`&lt;s:textfield&gt;`、`&lt;s:textarea&gt;`、`&lt;s:checkbox&gt;`等用于创建HTML表单的...

    java源码包---java 源码 大量 实例

     Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java源码...

    nodejs命令行参数处理模块commander使用实例

    同时,短标志可以组合在一起使用,例如`-abc`相当于分别使用`-a -b -c`。 **5. 处理回调函数** `commander`还支持在定义选项时传递回调函数,这样可以对用户的输入进行验证或处理。例如: ```javascript program ...

    前端开源库-rfr

    `rfr`的出现,极大地优化了React应用中的API请求处理,让开发者可以专注于业务逻辑,而不是繁琐的URL管理和请求封装。虽然它并非解决所有问题的万能解决方案,但在许多情况下,尤其是对于那些追求简洁和高效开发流程...

    jQuery之排序组件的深入解析

    Sortable组件可以应用于任何有序列表(ordered list)或者无序列表(unordered list)元素,并且可以接受选项来定制排序行为。一个基础的Sortable实现非常简单,只需要通过jQuery的选择器选中目标元素,并调用....

    Java面试题和答案.pdf

    - **`run()`**: 执行线程的主体,相当于线程的行为。 - **`start()`**: 启动新线程,调用`run()`方法。 **44. 创建线程池有哪几种方式?** - 使用`Executors`类提供的工厂方法。 - 手动创建`ThreadPoolExecutor`。...

    java源码包2

     Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java...

    java源码包3

     Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java...

    java源码包4

     Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不一定非要局限于游戏吧,RES、SRC资源都有,都在压缩包内。 Java zip压缩包查看程序源码 1个目标文件 摘要:Java...

    成百上千个Java 源码DEMO 4(1-4是独立压缩包)

    关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥...

    成百上千个Java 源码DEMO 3(1-4是独立压缩包)

    关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥...

    bean shell 相关JAR 包

    核心文件 `bsh-2.0b4.jar` 是Bean Shell的主要库文件,它提供了Bean Shell的实现和接口,使得开发者可以使用类似JavaScript的语法来编写和执行Java代码。这个版本是2.0b4,意味着这是一个beta版本,但通常来说稳定性...

Global site tag (gtag.js) - Google Analytics