/*
字典
ActiveXObject("Scripting.Dictionary")
项目中用到的ActiveXObject("Scripting.Dictionary")
但是要兼容谷歌 ,所以就自己写了一个字典
*/ var Dictionary = function () {
var arr;
var length = arr ? arr.length : 0;
};
Dictionary.prototype.add = function (Key, Item) {
if (this.arr == null || this.arr.length == 0) {
this.arr = new Array();
} if (this.exists(Key)) {
return; //也可以改为抛出异常
} this.arr.push(new item(Key, Item));
this.length = this.arr ? this.arr.length : 0;
} //是否存在
Dictionary.prototype.exists = function (Key) {
var exist = false;
if (this.arr == null || this.arr.length == 0) {
exist = false;
} for (var i = 0; i < this.arr.length; i++) {
if (Key == this.arr[i].Key) {
exist = true;
break;
}
} return exist;
} Dictionary.prototype.remove = function (Key) {
if (this.arr == null || this.arr.length == 0) {
return;
}
var index = 0;
for (var i = 0; i < this.arr.length; i++) {
if (Key == this.arr[i].Key) {
index = i;
break;
}
}
this.arr.splice(index, 1); this.length = this.arr ? this.arr.length : 0;
} Dictionary.prototype.removeAll = function () {
if (this.arr == null || this.arr.length == 0) {
return;
} this.arr.length = 0;
this.length = this.arr.length;
}
Dictionary.prototype.set = function (Key, item) {
if (this.arr == null || this.arr.length == 0) {
return;
} for (var i = 0; i < this.arr.length; i++) {
if (Key == this.arr[i].Key) {
this.arr[i].Item = item;
break;
}
}
} Dictionary.prototype.keys = function () {
var arrKey = new Array();
if (this.arr == null || this.arr.length == 0) {
//return;
}
else { var arrKey = new Array();
for (var i = 0; i < this.arr.length; i++) {
arrKey.push(this.arr[i].Key);
}
} return arrKey;
} function item(Key, Item) {
this.Key = Key;
this.Item = Item;
}

js 实现ActiveXObject("Scripting.Dictionary") 功能的更多相关文章

  1. JS、ActiveXObject、Scripting.FileSystemObject

    Javascript之文件操作 (IE) 一.功能实现核心:FileSystemObject 对象      要在javascript中实现文件操作功能,主要就是依靠FileSystemobject对 ...

  2. JS采用ActiveXObject实现用户在提交表单时屏蔽敏感词的功能

    本例中敏感词ciku.txt放在C盘根目录下,采用的ActiveXObject插件获取本地文件内容.使用此插件不需网上下插件,直接用如下js代码即可. 浏览器需修改interner安全选项的级别,启用 ...

  3. 【转】js实现复制到剪贴板功能,兼容所有浏览器

    两天前听了一个H5的分享,会议上有一句话,非常有感触:不是你不能,而是你对自己的要求太低.很简单的一句话,相信很多事情不是大家做不到,真的是对自己的要求太低,如果对自己要求多一点,那么你取得的进步可能 ...

  4. new ActiveXObject("Scripting.FileSystemObject") 时抛出异常 .

    使用JScript读写本地文件时,会使用Scripting.FileSystemObject控件. IE默认是不允许运行这类“未标记为安全执行脚本的ActiveX控件”的. 因此执行下行代码时: fs ...

  5. 【原】js实现复制到剪贴板功能,兼容所有浏览器

    两天前听了一个H5的分享,会议上有一句话,非常有感触:不是你不能,而是你对自己的要求太低.很简单的一句话,相信很多事情不是大家做不到,真的是对自己的要求太低,如果对自己要求多一点,那么你取得的进步可能 ...

  6. VBS使用Scripting.Dictionary字典对象

    Scripting.Dictionary是个很有用的组件,其创建了类似于Key索引对应Value值的字典对象,并且在其内部提供了快速索引访问的机制,可以让我们通过Key直接索引到指定的Value,比遍 ...

  7. 黄聪:JS实现复制到剪贴板功能,兼容所有浏览器(转)

    两天前听了一个H5的分享,会议上有一句话,非常有感触:不是你不能,而是你对自己的要求太低.很简单的一句话,相信很多事情不是大家做不到,真的是对自己的要求太低,如果对自己要求多一点,那么你取得的进步可能 ...

  8. JS实现Web网页打印功能(IE)

    问题描述:     JS实现Web网页打印功能 问题解决:     这里主要使用WebBrowser控件的ExeWB在IE中打印功能的实现 WebBrowser介绍:         WebBrows ...

  9. 用JS实现发邮件的功能 完美解决

    怎样用JS实现发邮件的功能? 我想用JS实现把页面文本框中的内容直接通过邮件的方式发送到一个指定的邮箱.fengxq给出的答案是<script language=javascript>if ...

随机推荐

  1. 【转】 strcpy和memcpy的区别

    strcpy和memcpy都是标准C库函数,它们有下面的特点.strcpy提供了字符串的复制.即strcpy只用于字符串复制,并且它不仅复制字符串内容之外,还会复制字符串的结束符. 已知strcpy函 ...

  2. JAVA学习之路(环境配置,)

    最近过去的寒假我就开始看一些JAVA的学习视频了,视频是毕向东老师的,讲得还不错,东北口音,欧了没? 首先是一些基础概念. 1.JAVA的三种技术架构 企业版 J2EE 标准版 J2SE 小型版 J2 ...

  3. JavaWeb基础: ServletConfig

    基本概念 ServletConfig用于配置Servlet的参数:在Servlet的配置文件中,可以使用一个或者是多个<init-param> 标签为Servlet配置一些初始化参数.当有 ...

  4. redhat网络基础配置

    添加浮动IP: ifconfig eth0:1 192.168.1.106 IP配置文件: BOOTPROTO: 采用的启动协议,有三种选择: (1) none:不使用启动协议 (2) static: ...

  5. Windows C++ 子目录数量

    CFileFind OneFile; BOOL bWorking = FALSE; ; ) != "\\") { strPath += "\\*.*"; } b ...

  6. jqury ajax 标准

    参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求方式 ("POST" 或 ...

  7. 无任何网络提供程序接受指定的网络路径(系统服务里没有workstation服务)

    今天同事访问公司服务器时,提示“无任何网络提供程序接受指定的网络路径”,网络ping正常,把防火墙关掉,再次尝试问题如故. 于是上网搜索: 1.服务停止:一般有workstation,server,c ...

  8. HDU 4939 Stupid Tower Defense (2014 Multi-University Training Contest 7)

    思路:首先红色肯定要放在最后面.前面蓝色和绿色dp求解. dp[i][j]  表示前面(i+j) 个 有 i 个蓝色塔  j个绿色塔 能造成最大伤害. //====================== ...

  9. OVM-V1.2 版发布,新增实时监控、支持一键升级

    OVM是国内首款.完全免费.企业级--混合虚拟化管理平台,OVM是从中小企业目前的困境得到启发,完全基于国内企业特点开发,更多的关注国内中小企业用户的产品需求. OVM-V1.2 该版本功能变动如下: ...

  10. Ubuntu user switch

    To list all users you can use: cut -d: -f1 /etc/passwd To add a new user you can use: sudo adduser n ...