If you want the Browser Timezone formatted you can count on the Javascript method (since Angularjs is just a framework to work with it) Date.toString and do:
var split = new Date().toString().split(" ");
var timeZoneFormatted = split[split.length - 2] + " " + split[split.length - 1];
This will return you "GMT-0400 (EST)" for example, including the time zone minutes when applicable.
Alternatively, with regex you can extract any desired part:
For "GMT-0300 (EDT)" :
new Date().toString().match(/([A-Z]+[\+-][0-9]+.*)/)[1]
To "GMT-0300" :
new Date().toString().match(/([A-Z]+[\+-][0-9]+)/)[1]
Only "EDT" :
new Date().toString().match(/\(([A-Za-z\s].*)\)/)[1]
Only "-0300":
new Date().toString().match(/([-\+][0-9]+)\s/)[1]
Date.toString reference:
Reference of Date.toString:
https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Date/toString
In addition to Moment you will need the Timezone Moment for this. http://momentjs.com/timezone/docs/#/using-timezones/guessing-user-Timezone/
– Guilherme Meireles