feature(config) mapCondition -> filter

This commit is contained in:
coderaiser 2015-06-17 12:44:19 -04:00
parent f33cb44306
commit 9a7ca5cc27

View file

@ -33,9 +33,10 @@
function convert(config) {
var result = clone(config),
array = Object.keys(result),
isBool = isType.bind(null, result, 'boolean');
isBool = partial(isType, result, 'boolean');
mapCondition(array, isBool)
array
.filter(isBool)
.forEach(function(name) {
var item = result[name];
@ -55,6 +56,20 @@
return result;
}
function partial(fn) {
var i,
bind = Function.prototype.bind,
n = arguments.length,
args = Array(n-1);
args[0] = null;
for (i = 1; i < n; i++)
args[i] = arguments[i];
return bind.apply(fn, args);
}
function isType(object, type, name) {
var current = typeof object[name],
is = current === type;
@ -62,19 +77,6 @@
return is;
}
function mapCondition(array, fn) {
var result = [];
array.forEach(function(item) {
var is = fn(item);
if (is)
result.push(item);
});
return result;
}
function setState(state) {
var ret = '';