Есть ли способ извлечь строку времени из времени UTC в Javascript

Итак, вот что такое мой тестовый скрипт:

print("original sys.argv output\n" + (sys.argv[1]))
string_temp=(yaml.load(sys.argv[1]))
print ("first transformation\n" +string_temp)
string_temp=string_temp.replace(":",": ")

dict_in=yaml.load(string_temp)
print("This is the dictionary")
print(dict_in)

Это то, что я набираю в консоль

python test_script.py """{foo:bar, id:23}"""

И это вывод

original sys.argv output
"{foo:bar, id:23}"
first transformation
{foo:bar, id:23}
This is the dictionary
{'foo': 'bar', 'id': 23}

Это работает только в том случае, если я использую трипсовые кавычки ("" "). Если я использую (") или (') для определения входной строки, я получаю сообщение об ошибке.

В качестве альтернативы можно удалить (") из sys.argv[1]

print("original sys.argv output\n" + (sys.argv[1]))
string_temp=(sys.argv[1])[1:-1]
print ("first transformation\n" +string_temp)
string_temp=string_temp.replace(":",": ")

dict_in=yaml.load(string_temp)
print("This is the dictionary")
print(dict_in)
-3
задан piet.t 27 March 2019 в 08:07
поделиться

4 ответа

   var date = new Date('Sat, 19 Jan 2019 05:40:07 GMT');
   var result=date.getUTCHours()+':'+date.getUTCMinutes()+':'+date.getUTCSeconds();
0
ответ дан Sachin Aghera 27 March 2019 в 08:07
поделиться

Как насчет toLocaleTimeString()?

var date = new Date('Sat, 19 Jan 2019 05:40:07 GMT'); 
console.log(date.toLocaleTimeString('en-US', {timeZone: 'UTC', hour12: false}));

Если вы хотите полностью избежать объекта Date, вы можете просто разберите строку:

var date = 'Sat, 19 Jan 2019 05:40:07 GMT'
var timeRegex = /(\d\d):(\d\d):(\d\d)/
console.log(timeRegex.exec(date)[0])

0
ответ дан Adam Millerchip 27 March 2019 в 08:07
поделиться

Я не знаю, JSON - это еще один формат для вас? Если нет, то вы можете сделать это следующим образом:

var date = new Date('Sat, 19 Jan 2019 05:40:07 GMT'); 
console.log(date.toJSON().split("T")[1].split(".")[0]);
//or even shorter:
console.log(date.toJSON().slice(-13, -5));

Это немного короче, чем ваш метод.

В другом случае вы можете сделать это следующим образом:

var dateStr = 'Sat, 19 Jan 2019 05:40:07 GMT'; 
var date = new Date(dateStr); 
console.log(dateStr.slice(-12, -4));

0
ответ дан Bharata 27 March 2019 в 08:07
поделиться

Итак, я не смог найти другой метод, более привлекательный, чем мой:)

var date = new Date('Sat, 19 Jan 2019 05:40:07 GMT'); 
console.log(date.toISOString().split("T")[1].split(".")[0]);

0
ответ дан the_ultimate_developer 27 March 2019 в 08:07
поделиться
Другие вопросы по тегам:

Похожие вопросы: