Я столкнулся с той же проблемой, и вот решение, которое я использовал с ES6
code
let id = 0; // This is a kind of global variable accessible for every instance
class Animal {
constructor(name){
this.name = name;
this.id = id++;
}
foo(){}
// Executes some cool stuff
}
cat = new Animal("Catty");
console.log(cat.id) // 1
Вы можете использовать DateTime.ParseExact для разбора строки.
Если вы всегда знаете часовой пояс, вы можете использовать следующие
var paypalDateTime = DateTime.ParseExact("10:52:32 Jan 17, 2019 PST", "HH:mm:ss MMM dd, yyyy PST", CultureInfo.InvariantCulture);
Console.WriteLine(paypalDateTime.ToString());
// Output: 1/17/2019 10:52:32
Если вы хотите
var inputDates = new [] {
"10:52:32 Jan 17, 2019 PST",
"10:52:32 Jan 17, 2019 GMT",
"10:52:32 Jan 17, 2019 UT",
"10:52:32 Jan 17, 2019 NZST"
};
foreach (var inputDate in inputDates)
{
var timeZone = inputDate.Substring(inputDate.LastIndexOf(" ") + 1);
var paypalDateTime = DateTime.ParseExact(inputDate.Substring(0, inputDate.LastIndexOf(" ")), "HH:mm:ss MMM dd, yyyy", CultureInfo.InvariantCulture);
// Here you can handle the timezone
Console.WriteLine(paypalDateTime.ToString() + " in timezone " + timeZone);
}
Выходы
1/17/2019 10:52:32 AM in timezone PST
1/17/2019 10:52:32 AM in timezone GMT
1/17/2019 10:52:32 AM in timezone UT
1/17/2019 10:52:32 AM in timezone NZST