diff --git a/lib/server/binom.js b/lib/server/binom.js index ea71be70..5e10ddf0 100644 --- a/lib/server/binom.js +++ b/lib/server/binom.js @@ -5,23 +5,33 @@ function binom(name, array) { var ret; - - if (typeof name !== 'string') - throw(Error('name should be string!')); - - if (!Array.isArray(array)) - throw(Error('array should be array!')); - - array.some(function(item) { - var is = item.name === name; - if (is) - ret = item; + if (!Array.isArray(array)) + throw(Error('array should be array!')); + + if (typeof name !== 'string') + throw(Error('name should be string!')); - return is; - }); - - return ret; - } + array.some(function(item) { + var is = item.name === name, + isArray = Array.isArray(item); + + if (is) + ret = item; + else if (isArray) + item.some(function(item) { + is = item.name === name; + + if (is) + ret = item.data; + + return is; + }); + + return is; + }); + + return ret; + } })();