12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- define("dojox/lang/functional/object", ["dojo/_base/kernel", "dojo/_base/lang", "dojo/_base/window", "./lambda"], function(dojo, lang, win, df){
- var empty = {};
- lang.mixin(df, {
-
- keys: function(/*Object*/ obj){
-
- var t = [];
- for(var i in obj){
- if(!(i in empty)){
- t.push(i);
- }
- }
- return t;
- },
- values: function(/*Object*/ obj){
-
- var t = [];
- for(var i in obj){
- if(!(i in empty)){
- t.push(obj[i]);
- }
- }
- return t;
- },
- filterIn: function(/*Object*/ obj, /*Function|String|Array*/ f, /*Object?*/ o){
-
-
- o = o || win.global; f = df.lambda(f);
- var t = {}, v, i;
- for(i in obj){
- if(!(i in empty)){
- v = obj[i];
- if(f.call(o, v, i, obj)){ t[i] = v; }
- }
- }
- return t;
- },
- forIn: function(/*Object*/ obj, /*Function|String|Array*/ f, /*Object?*/ o){
-
- o = o || win.global; f = df.lambda(f);
- for(var i in obj){
- if(!(i in empty)){
- f.call(o, obj[i], i, obj);
- }
- }
- return o;
- },
- mapIn: function(/*Object*/ obj, /*Function|String|Array*/ f, /*Object?*/ o){
-
-
- o = o || win.global; f = df.lambda(f);
- var t = {}, i;
- for(i in obj){
- if(!(i in empty)){
- t[i] = f.call(o, obj[i], i, obj);
- }
- }
- return t;
- }
- });
-
- return df;
- });
|