I need to get current login User profile properties provide information about SharePoint users, such as display name, email, PictureUrl and other business and personal information including custom properties.Can someone help me achieve this?

Note that, for me to get this to work, I had to add <script type="text/javascript">$(document).ready(function({ getUserProperties()); });</script> and add a reference to jQuery, as well as add a var timer = setTimeout(function() { // put the contents of onRequestSuccess in here... }, 250);. My services were getting the data faster than my page could create the DOM and post it.
– vapcguyMar 11 at 22:56

The only weird thing for me - I populated the "Office" field with a value, then I went back and changed it. This code pulled back the old value for the field, while the ECMAScript in the accepted answer pulled back the current value. Any ideas why and how to get it to pull back the current value?
– vapcguyMar 11 at 23:00

On the last bit of code you forgot to declare property. You have properties and then are calling property.Key and property.Value but there is no context to the variable property in the code. I changed it below.

The only weird thing for me - I populated the "Office" field with a value, then I went back and changed it. This code pulled back the old value for the field, while the ECMAScript in the accepted answer pulled back the current value. Any ideas why and how to get it to pull back the current value?
– vapcguyMar 11 at 22:59