Q:

Get emails address of current logged in user

I tried this
console.log(Meteor.users.find({_id: this.userId},{fields: {'emails.address': 1}}));

in server side but it's displaying 
I20140315-12:06:08.588(6)? undefined

So how do I get current user details like email address ?

A:

You need to make sure your emails are published:
Meteor.publish(null, function() {
    return Meteor.users.find({_id: this.userId}, {fields: { emails: 1, profile: 1 } });
});

Then you can just do (Server or client)
var user = Meteor.user();
var email = user && user.emails && user.emails[0].address

console.log(email);

Will return null if the user is not logged in/your subscriptions are not yet ready, or the user has no emails set.
If you're using it in a Meteor.publish function you will need to use an alternative to Meteor.user() and fetch the user data manually.
If you are doing this from within a callback from an npm module you need to wrap your callback in a Meteor.bindEnvironment to ensure that your callback runs in the same fiber. In general you can't use Meteor code in these callbacks without bindEnvironment.

