The easiest way is to just use a UNIX timestamp. It'll store the seconds since 1.1.1970 0:00 AM UTC. Most languages have date/time manipulation libraries which can easily use a UNIX timestamp (since it's very common). Also, storing an integer is very efficient :) As for JavaScript, you don't even need any external library, because Date can handle timestamps and the conversion just fine (hooray for lightweight scripts) ;)
So, when you store a time (for example 2PM IST = UTC+5:30), it is first converted to UTC and then to the UNIX timestamp. When someone in Central Europe (for example CEST) wants to view the correct date and time in their local time zone, all you have to do is convert the timestamp to UTC and then to CEST = UTC+2. They would see 10:30AM CEST.