1
0
Fork 0
forked from 0x2620/oxjs

use native ''.trim; rename vars

This commit is contained in:
rolux 2012-05-25 14:32:17 +02:00
commit 68ff06af2a
5 changed files with 138 additions and 157 deletions

View file

@ -5,13 +5,13 @@ Ox.extend <function> Extends an object with one or more other objects
> Ox.extend({a: 1, b: 1, c: 1}, {b: 2, c: 2}, {c: 3})
{a: 1, b: 2, c: 3}
@*/
Ox.extend = function(obj) {
Ox.forEach(Ox.slice(arguments, 1), function(arg, i) {
Ox.forEach(arg, function(val, key) {
obj[key] = val;
Ox.extend = function(object) {
Ox.forEach(Ox.slice(arguments, 1), function(argument, i) {
Ox.forEach(argument, function(value, key) {
object[key] = value;
});
});
return obj;
return object;
};
/*@
@ -76,8 +76,8 @@ Ox.getset = function(object, args, callback, that) {
return ret;
};
Ox.hasOwn = function(obj, val) {
return Object.prototype.hasOwnProperty.call(obj, val)
Ox.hasOwn = function(object, value) {
return Object.prototype.hasOwnProperty.call(object, value)
};
/*@
@ -85,10 +85,10 @@ Ox.keyOf <f> Equivalent of [].indexOf for objects
> Ox.keyOf({a: 1, b: 2, c: 3}, 1)
'a'
@*/
Ox.keyOf = function(obj, val) {
Ox.keyOf = function(object, value) {
var key;
Ox.forEach(obj, function(v, k) {
if (v === val) {
Ox.forEach(object, function(v, k) {
if (v === value) {
key = k;
Ox.Break();
}
@ -126,18 +126,18 @@ Ox.methods <f> Returns a sorted list of all method names of an object
> Ox.methods({a: [], b: false, f: function() {}, n: 0, o: {}, s: ''})
['f']
@*/
Ox.methods = function(obj, includePrototype) {
Ox.methods = function(object, includePrototype) {
var key, keys;
if (includePrototype) {
keys = [];
for (var key in obj) {
for (var key in object) {
keys.push(key);
}
} else {
keys = Object.keys(obj);
keys = Object.keys(object);
}
return keys.filter(function(key) {
return Ox.isFunction(obj[key]);
return Ox.isFunction(object[key]);
}).sort();
};
@ -150,14 +150,14 @@ Ox.serialize <f> Parses an object into query parameters
> Ox.serialize({string: 'foo', empty: {}, null: null, undefined: void 0})
'string=foo'
@*/
Ox.serialize = function(obj) {
var arr = [];
Ox.forEach(obj, function(val, key) {
if (!Ox.isEmpty(val) && !Ox.isNull(val) && !Ox.isUndefined(val)) {
arr.push(key + '=' + val);
Ox.serialize = function(object) {
var ret = [];
Ox.forEach(object, function(value, key) {
if (!Ox.isEmpty(value) && !Ox.isNull(value) && !Ox.isUndefined(value)) {
ret.push(key + '=' + value);
}
});
return arr.join('&');
return ret.join('&');
};
/*@
@ -169,19 +169,17 @@ Ox.unserialize <f> Parses query parameters into an object
> Ox.unserialize('a=1&b=&c&a=0', true)
{a: 0}
@*/
Ox.unserialize = function(str, toNumber) {
var obj = {};
str.split('&').forEach(function(val) {
if (val) {
var arr = val.split('=');
if (arr[1]) {
obj[arr[0]] = !toNumber ? arr[1]
: arr[1].indexOf(',') == -1 ? +arr[1]
: arr[1].split(',').map(function(val) {
return +val;
});
}
Ox.unserialize = function(string, toNumber) {
var ret = {};
Ox.filter(string.split('&')).forEach(function(value) {
var array = value.split('=');
if (array[1]) {
ret[array[0]] = !toNumber ? array[1]
: array[1].indexOf(',') == -1 ? +array[1]
: array[1].split(',').map(function(value) {
return +value;
});
}
});
return obj;
return ret;
};