复制代码 代码如下:
var yx = {
//得到js内置数据类型的类型,返回值包括[date,regexp,number,string,array,boolean,function,null,undefined,object]
gettype : function(obj){
return obj == null ? obj + : object.prototype.tostring.call(obj).slice(8,-1);
}
//创建一个简单的类
,createclass : function(){
return function(){
this.init.apply(this,arguments);
};
}
//格式化字符串,yx.format({0},{1},haha,[hello,world])
,format : function(str,params){
var reg = /{(\d+)}/g;
return str.replace(reg,function(match,val){
return params[~~val];
});
}
//格式化字符串,yx.format2(数学={数学},语文={语文},haha,{数学:100,语文:99})
,format2 : function(str,params){
var reg = /{([^{}]+)}/g;
return str.replace(reg,function(match,val){
return params[val];
});
}
//格式化时间,yx.format3(new date,yy-mm-dd h:m:s)
,format3 : function(date,patten){
var y = date.getfullyear(),mon = date.getmonth() + 1,d = date.getdate(),h = date.gethours(),min = date.getminutes(),s = date.getseconds()
,zero = function(o){return (0+o).slice(-2)}
,matchs = {yy:y,y:(y+).slice(-2),mm:zero(mon),m:mon,dd:zero(d),d:d,hh:zero(h),h:h,mm:zero(min),m:min,ss:zero(s),s:s};
return patten.replace(/yy|y|mm|m|dd|d|hh|h|mm|m|ss|s/g,function(match){
return matchs[match];
});
}
//数组去重,yx.unique([1,1,1,document.body,document.body]
,unique : function(arr){
var kv = {},len = arr.length,rs = [],t;
for(;len--;){
t = arr[len];
(kv[t]==undefined || kv[t]!==t) && (kv[t]=t,rs.push(t));
}
return rs;
}
};