function Numeric(){
		this.formatNumber = function(n,format){
			if(isNaN(n)) return;
			var i,c,f,comma,symbol='',sign='',decimals='',integers='';
			var fInt,fDec,nInt,nDec,len=0,cnt=0;
			if(n<0) sign='-';
			n+='';if(sign) n=n.replace('-','');
			format=(format)? format+'':'#,##0.00';
			if(format.indexOf(',')>=0) comma=',';
			if(format.indexOf('$')>=0) symbol='$';
			else if(format.indexOf('%')>=0)	symbol='%';
			s=format.split('.');
			fInt=((s[0]==''||s[0]==null||s[0]=='undefinded')? '':s[0]);
			fInt=fInt.split('').reverse().join('');
			fDec=(s[1]==''||s[1]==null||s[1]=='undefinded')? '':s[1];
			s=n.split('.');
			nInt=((s[0]==''||s[0]==null||s[0]=='undefinded')? '':s[0]);
			nInt=nInt.split('').reverse().join('');;
			nDec=(s[1]==''||s[1]==null||s[1]=='undefinded')? '':s[1];
			if (nInt) len=nInt.length;
			if (fInt.length>len) len=fInt.length;
			for(i=0;i<len;i++){
				c=nInt.charAt(i);
				f=fInt.charAt(i);
				cnt++;
				if (cnt==4 && comma && (c||f=='0')) integers+=comma;
				if(f=='0' && !c) integers+='0';
				else if(c) integers+=c;
				if (cnt==4) cnt=1;
			}
			if(fDec) len=fDec.length;
			for(i=0;i<len;i++){
				c=nDec.charAt(i);
				f=fDec.charAt(i);
				if(f=='0' && !c) decimals+='0';
				else if((f=='#' || f=='0') && c) decimals+=c;
			}
			f=((integers+'').split('').reverse().join(''))+((decimals)? '.'+decimals:'');
			if(symbol=='%') f+=symbol;
			else f=symbol+f;
			return sign+f;
		}
		
		this.isFloat=function(n){
			if(typeof(n)=='number' && (n+'').indexOf('.')>=0) return true;
			else return false;
		}
		
		this.isInteger=function(n){
			if(typeof(n)=='number' && (n+'').indexOf('.')<0) return true;
			else return false;;
		}
		
		this.toInteger=function(dt){
			var vl;
			if(!dt) return 0;
			if(isNaN(dt)) vl=parseInt((dt+'').replace(/\,/g,''));
			else vl= parseInt(dt);
			if (isNaN(vl)) vl = 0;
			return vl;
		}
		
		this.toFloat=function(dt){
			var vl;
			if(!dt) return 0;
			if(isNaN(dt)) vl=parseFloat((dt+'').replace(/\,/g,''));
			else vl = parseFloat(dt);
			if (isNaN(vl)) vl = 0;
			return vl;
		}
		
		this.toBoolean = function(dt) {
			return (dt=='true'||dt>=1)? true:false;
		}

		this.isNumeric = function(n){
			var nReg = new RegExp('[-][[:digit:]]');
		}

} // end class  Numeric


//  var obj_num = new Numeric();
//	var str1 = obj_num.formatNumber(1500000,'#,##0');
//	var str2 = obj_num.formatNumber(1500000,'#,##0.00');
//	alert(str1);
//	alert(str2);
/*function setFormat(obj){
	var obj_num = new Numeric();
	var n = obj_num.toInteger(obj.value);
	if(n<=0){  obj.value = ''; return '';}
	obj.value = obj_num.formatNumber(n,'#,##0');
}*/