Энэ объектыг бичиж орууллаа. Учир нь элдэв өгөгдөлийг client талд утга хадгалах javascript object шаардлагатай болдог дутагдлыг төгс нөхнө. Ашиглаад үзээрэй.
Чадвар нь: JSON, JQuery, Array, Attr авч болон өгөх
var _objects = {
interface0 : {
data : new Array(),
getString : function() { return JSON.stringify(this); },
extend : function(args) {
var obj = (typeof args == 'string') ? eval('(' + args + ')') : args;
$.extend(this, obj, true);
return this;
},
parse : function(args) {
var i = args.toString().indexOf('{');
if (i == -1) i = args.toString().indexOf('}');
if (i == -1) { return { data : args.toString() }; }
return (typeof args == 'string') ? eval('(' + args + ')') : args;
}
},
create : function(){
var o = { };
if (arguments.length == 1) {
try {
//Long l = Long.parseLong(arguments[0]);
o = $.extend({}, { id : arguments[0] }, true);
} catch (ex) {
o = $.extend({}, { id : 0 }, true);
var obj = (typeof arguments[0]=='string')?eval('('+arguments[0]+')'):arguments[0];
o = $.extend({}, obj, true);
}
} else if (arguments.length == 2) {
var obj = (typeof arguments[1]=='string')?eval('('+arguments[1]+')'):arguments[1];
o = $.extend({}, obj, true);
o = $.extend(o, { id : arguments[0] }, true);
} else
o = $.extend({}, { id : 0 }, true);
o = $.extend(o, this.interface0, true);
o.data = new Array();
//usage::
//var n = new MyEntity(10);
//n.hi = "hi boroo";
//n.extend({name:"boroo"});
//var obj = new MyEntity(20, n.getString());
//var n = new MyEntity(10, "{name:'baatar'}");
//n.data["a"]="b";
//alert( n.data["a"] );
return o;
}
//var a = _objects.create(22);
//var b = _objects.create(33);
//b.hi = "welcome, boroo";
//b.id="1";
//a.extend(b.getString());
//alert(a.data.length);
};
No comments:
Post a Comment