/*
* @author zhangdaijun 20070725
* Array,Number,String 扩展
*/


/*数组增加扩展方法*/
if(!Array.prototype.splice) {//for ie5
	Array.prototype.splice = function () {
		var start = arguments[0];
		var deleteCount = arguments[1];
		var len = arguments.length - 2;
		var returnValue = this.slice(start);
		for (var i = 0; i < len; i++) {
			this[start + i] = arguments[i + 2];
		}
		for (var i = 0; i < returnValue.length - deleteCount; i++) {
			this[start + len + i] = returnValue[deleteCount + i];
		}
		this.length = start + len + returnValue.length - deleteCount;
		returnValue.length = deleteCount;
		return returnValue;
	}
}
Array.prototype.contains = function(value){
	var exist = false;
    for(var i=0;i<this.length;i++){
        if(this[i] == value){
            exist = true;
            break;
        }
    }
    return exist;
}
Array.prototype.add = function(value){
	if(!this.contains(value)){
		this.push(value);
	}
}
Array.prototype.remove = function(value){
    var len = this.length;//
    for(var i=0;i<len;i++){
        if(this[i] == value){
            this.splice(i, 1);
            break;
        }
    }
}
Array.prototype.clear = function(value){
    //this = new Array();
    var l = this.length;
    for(var i =0;i<l;i++){
        this.pop();
    }
}

/*数字扩展*/
Number.prototype.NaN0=function(){return isNaN(this)?0:this;}

/*字符串扩展*/
String.prototype.trim = function(){
		var str = this;
	    if(str == undefined || str == null) 
	        str = "";
	    return str.replace(/(^\s*)|(\s*$)/g, "");
	    //return this.rTrim(this.lTrim(str));
}
String.prototype.lTrim = function(){
		var str = this;
	    if(str == undefined || str == null)
        	return "";
    	return str.replace(/(^\s*)/g,"");		
}
String.prototype.rTrim = function(){
		var str = this;
		if(str == undefined || str == null)
			return "";
		return str.replace(/(\s*$)/g,"");  
}

/* request */

if(typeof _ajax_request == "undefined"){
    var _ajax_request = new Object; 
}

_ajax_request.queryString = function(paramName){
    var reg = new RegExp("(^|&)"+ paramName +"=([^&]*)(&|$)");
    var r = window.location.search.substr(1).match(reg);
    if (r!=null) {
        return (r[2]);//unescape
    }
    return null;
}
_ajax_request.queryString.Count = function(){
    //Todo....    
}
_ajax_request.queryString.Keys = function(){
    //Todo...
}
_ajax_request.queryString.Values = function(){
    //Todo...
}
_ajax_request.queryString.hasKeys = function(){
    //Todo...
}




