From 74be4c92d0eed73cac502f536248d9259806188f Mon Sep 17 00:00:00 2001 From: coderaiser Date: Fri, 24 Apr 2015 11:26:03 -0400 Subject: [PATCH] feature(binom) Util.findObjByNameInArr -> binom --- lib/server/binom.js | 42 ++++++++++++++++++++++++++---------------- 1 file changed, 26 insertions(+), 16 deletions(-) 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; + } })();