`

我的JS库

阅读更多
//Ajax扩展
var Ajax = function(url, params, callback) {
    var reqError = "\u54cd\u5e94\u5f02\u5e38\uff01\uff01\uff01";
    var sendData = null;
    var createXHR = function () {
        var XHR;
        if (window.XMLHttpRequest) {
            XHR = new XMLHttpRequest();
        } else {
            if (window.ActiveXObject) {
                try {
                    XHR = new ActiveXObject("Msxml2.XMLHTTP");
                }
                catch (e) {
                    try {
                        XHR = new ActiveXObject("Microsoft.XMLHTTP");
                    }
                    catch (e) {
                    }
                }
            }
        }
        return XHR;
    };
    var processParams = function () {
        var ret = "";
        for (var p in params) {
            ret += "&";
            ret += p + "=" + params[p];
        }
        ret = ret.substring(1);
        return ret;
    };
    var method = (url.indexOf("?") == -1) ? "POST" : "GET";
    if (params&&typeof(params)=='object') {
        if(typeof(params)=='object'){
            if (method == "GET") {
                url += "&" + processParams();
            } else {
                sendData = processParams();
            }
        }
        if(typeof(params)=='string'){
            if (method == "GET") {
                url += "&" + params;
            } else {
                sendData = params;
            }
        }
    }
    var xhr = createXHR();
    xhr.open(method, url, true);
    if (method == "POST") {
        xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");   
    }
    xhr.onreadystatechange = function () {
        if (xhr.readyState == 4) {
            if (xhr.status == 200) {
                if(callback){
                    callback(xhr);
                };
            } else {
                window.alert(reqError);
            }
        }
    };
    xhr.send(sendData);
};
//Array扩展
Array.prototype.indexOf=function (el) {
	var ret=-1;
	for(var k=0;k<this.length;k++) {
		if(this[k]==el) {
			ret=k;
			break;
		}
	}
	return ret;
};
Array.prototype.each=function (fn) {
	for(var k=0;k<this.length;k++) {
		fn(this[k],k);
	}
};
Array.prototype.unique=function () {
	var temp={};
	var result=[];
	for(var k=0;k<this.length;k++) {
		if(!temp[this[k]]) {
			temp[this[k]]=true;
		}
	}
	for(var i in temp) {
		result.push(i);
	}
	return result;
};
Array.prototype.remove=function (el) {
	while(this.indexOf(el)!=-1) {
		this.splice(this.indexOf(el),1);
	}
	return this;
};
var Map=function () {   
    this.map={};   
    this.keys=[];   
    this.values=[];   
    this.count=0;   
    this.add=function (k,v) {   
        this.map[k]=v;   
        var index=this.keys.indexOf(k);   
        if(index!=-1) {   
            this.values[index]=v;   
        }else {   
            this.keys.push(k);   
            this.values.push(v);   
            this.count++;   
        }   
    };
    this.get=function (k) {   
        return this.map[k];
    }      
};
//Function扩展
Function.prototype.defer=function () {
	var time=arguments[0]?arguments[0]:1000;
	var params=[];
	for(var k=1;k<arguments.length;k++) {
		params.push(arguments[k]);
	}
	params=params.join(",");
	window.setTimeout(this(params),time);
};

 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    javascript生成uuid的js库文件

    1. `uuid-js`库:这是一个基于RFC4122标准实现的JavaScript库,提供了V1到V5的所有版本UUID生成方法。其中,V1基于时间戳和MAC地址生成,V4完全是随机生成,V5则基于命名空间和SHA-1哈希算法。 2. `uuid`库(之前...

    弹窗js库文件

    学习和使用弹窗js库,开发者需要掌握基本的JavaScript语法、DOM操作和事件监听。同时,理解浏览器兼容性和性能优化也是重要的实践环节。在实际项目中,选择合适的弹窗解决方案需要考虑用户体验、功能需求、开发效率...

    elasticsearch.js, 使用ElasticSearch的简单javascript库.zip

    elasticsearch.js, 使用ElasticSearch的简单javascript库 一个简单的javascript库,用于处理 ElasticSearch 。它还提供了一个backend接口,适合于与倾斜式数据库套件一起使用。用法库需要:下划线jQuery ( 用于Ajax...

    JavaScript专题一_构建自己的JS库

    一个JavaScript库是一组预先编写好的函数和对象,可以方便地被其他JavaScript代码引用和使用,以提高开发效率和代码重用性。例如,jQuery就是一个著名的JS库,它简化了DOM操作、事件处理和动画制作等任务。 构建...

    javascript库pdfjs-1.8.188.js压缩包

    javascript库pdfjs-1.8.188.js压缩包javascript库pdfjs-1.8.188.js压缩包javascript库pdfjs-1.8.188.js压缩包

    JavaScript数学计算库Jmat.js.zip

    Jmat.js 是一个 JavaScript 的数学计算库。支持复杂的数学函数和统计。 标签:Jmatjs

    crypto-js.js的js库

    "crypto-js.js的js库" 指的是一个JavaScript库,名为`crypto-js`,它专门用于加密和解密操作。这个库是JavaScript开发者在Web应用中处理安全数据传输、用户密码存储以及其他涉及加密需求时常用的一个工具。 **描述...

    最新版Javascript库

    最新版Javascript库!支持Cookie、Ajax、BlockUI and so on.

    javascript汉字拼音库

    js获取汉字字符串的首字母必须先从库里面进行比较。这就是可能用到的库。

    用于长度单位转换的JavaScript库

    这个名为"length.js"的库专为此目的而设计,它提供了方便的API,允许开发者轻松地在各种长度单位之间进行转换。让我们深入探讨这个库的细节。 ### 一、库的安装与引入 首先,你需要将`length.js`库添加到你的项目...

    强大的js库,好资源

    在"强大的js库,好资源"这个主题中,我们聚焦于利用JavaScript库来提升网页功能和用户体验。这些库通常包含预编写的功能,可以帮助开发者快速实现常见任务,如数据可视化、动画、用户界面组件等。 描述中提到的"三...

    Javascript扩展数学库MathJS.zip

    Math.js 是个JavaScript 和 Node.js 的扩展数学库。它包括了灵活的表达式解析器,提供数字,大数值,复杂数值,单位,矩阵等等集成的解决方案。Math.js 很强大又易于使用。 特性 支持数值,大数值,复杂数值,单位...

    FileSaver.js 实现浏览器端文件保存的JavaScript 库

    FileSaver.js 实现了在本身不支持 HTML5 W3C saveAs() FileSaver 接口的浏览器支持文件保存。FileSaver.js 在客户端保存文件的解决方案,并且...是一种简单易用实现的利用 JavaScript/JS 在浏览器端保存文件的方案。

    czy.ui.js 依赖jquery库的js ui库

    1. **jQuery.js**:jQuery是一个广泛使用的JavaScript库,它的主要目标是简化JavaScript编程,通过提供一套简洁的API来处理DOM操作、事件处理、动画效果以及Ajax交互。jQuery的核心特性包括选择器(用于高效地查找...

    一些自寫通用的JS库

    标题 "一些自寫通用的JS库" 描述的是一个包含作者自行编写的JavaScript库的集合,这个库可能包含了各种实用的功能,比如自定义滚动条、文本高亮和元素颜色变化等。这些功能对于网页交互性和用户体验提升有重要作用,...

    statisticsjs用于统计数据分析的扩展开源JavaScript库

    "statisticsjs用于统计数据分析的扩展开源JavaScript库" 指出我们讨论的是一个名为statistics.js的JavaScript库,它专门用于统计数据分析。这个库是开源的,意味着任何人都可以查看、使用其代码,并对其进行修改或...

    CryptoJS-v4.0.0下载,为JavaScript提供了各种各样的加密算法的JavaScript库

    CryptoJS(crypto.js)是一个为JavaScript提供了各种各样的加密算法的JavaScript库。 作用:用前端框架加密后再进行传输,以提高密码传输过程中的安全性。 aes.js, bower.json, cipher-core.js, core.js, crypto-js....

    JavaScript专题构建自己的JS库

    在Web开发中,JavaScript库如jQuery、React或Vue.js等提供了丰富的功能,如DOM操作、事件处理、动画效果等,极大地提高了开发效率。但有时候,这些大型库可能包含了许多你并不需要的功能,从而增加了页面加载的时间...

    Tween.jsJavaScript库

    Tween.jsJavaScript库

    pinyin4js是一个汉字转拼音的Javascript开源库

    “pinyin4js是一个汉字转拼音的Javascript开源库”表明这是一个JavaScript库,它的主要功能是将汉字转换为对应的拼音表示。在网页应用或者JavaScript编程中,这样的库可以帮助开发者处理与汉字拼音相关的任务,比如...

Global site tag (gtag.js) - Google Analytics