Here's another approach that I prefer:

exports.get_user = function (id, cb) {
  var user;
  users.some(function (u) {
    var found = u.id === id;
    if (found) user = u;
    return found;
  });
  cb(user ? null : 'not found', user);
}

On Fri, Mar 9, 2012 at 5:02 AM, Axel Kittenberger <[email protected]> wrote:
> Many coders forget that you can use the "return" statement before the
> end of the function. At least most people who finished some coding
> course hardly ever do this. It usually simplifies many functions:
>
> exports.get_user = function (id, func) {
>    for (var i = 0, z = users.length; i < z; i ++) {
>         var u = users[i];
>         if (u.id === id) {
>             func(null, u);
>             return;
>         }
>    }
>    func('NOT_FOUND', null);
> }
>
> Depending on optimizing speed vs memory use, or if this function is
> heavly used compared to only seldomly (profiler!) l it might be a good
> idea to keep a table handy, where the users are sorted with their id.
>
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines: 
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en



-- 
R. Mark Volkmann
Object Computing, Inc.

-- 
Job Board: http://jobs.nodejs.org/
Posting guidelines: 
https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Reply via email to