Форум программистов, компьютерный форум, киберфорум
JavaScript для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
0 / 0 / 0
Регистрация: 16.02.2017
Сообщений: 41
1

Как принимать в Date только ЧЧ:ММ:СС?

05.04.2019, 22:52. Просмотров 836. Ответов 6
Метки нет (Все метки)


Добрый вечер, подошел к работе с датами только.
В моей задаче требуется, в инпут передавать время в формате ЧЧ:ММ:СС (12:37:23) и также Дни ЧЧ:ММ:СС (3 12:37:23) т.е если я введу в форму количество минут соответствующее часам или дням, то я должен получить эту дату в миллисекундах.
Я пытался через Date.parse, но там какие-то ошибки постоянно, либо NaN и т.д. Подскажите как быть в таком случае?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
05.04.2019, 22:52
Ответы с готовыми решениями:

Как заставить ComboBox принимать только значения из списка?
Всем привет. Вопрос: как сделать так, что бы combobox мог принимать только те значения, которые...

Как сделать так, чтобы код мог принимать только определенные числа?
Дело в том, что если вводить числа с 5-ти до 8-ми, то ответы в коде сходятся, а если ввести числа...

Как в поле DATE записать ТОЛЬКО год
При заполнении бд контентом встречаются случаи, когда для некоторых данных точная дата не...

Как сделать generic класс, который будет принимать в качестве параметра только числа и уметь их складывать и т.д?
Я хочу написать класс дерева отрезков в который можно передавать любые числа, однако даже T extends...

__________________
Помогаю в написании студенческих работ здесь.
Записывайтесь на профессиональные курсы Fullstack-разработчиков на JavaScript‌
6
1639 / 1305 / 639
Регистрация: 10.01.2015
Сообщений: 4,283
06.04.2019, 09:45 2
FillPower, что за символ "3"?
Если Вы хотите получить метку времени, то дату, как минимум, надо представлять в формате 27 June 2002 12:37:23.
Javascript
1
console.log(Date.parse("27 June 2002 12:37:23")); //1025170643000
0
0 / 0 / 0
Регистрация: 16.02.2017
Сообщений: 41
06.04.2019, 09:51  [ТС] 3
Пифагор, Смотрите, у меня есть таймер с кнопками, я реализовал их с помощью считывания значений из атрибутов, так же есть инпут куда я ввожу дату в определенном формате и нужно чтобы инпут возвращал миллисекунды. А 3 это дни, то есть я могу в инпут вводить и дни:часы:минуты:секунды тоже, либо просто без дней часы:минуты:секунды
0
1639 / 1305 / 639
Регистрация: 10.01.2015
Сообщений: 4,283
06.04.2019, 09:59 4
Цитата Сообщение от FillPower Посмотреть сообщение
я могу в инпут вводить и дни:часы:минуты:секунды
То есть, формат ввода будет дни:часы:минуты:секунды? Какой то странный формат... А день будет относительно чего считаться? (Наверное, понятно сформулировал).
Цитата Сообщение от FillPower Посмотреть сообщение
либо просто без дней часы:минуты:секунды
Часы:минуты:секунды какой даты? Скрипту же надо знать, от чего отталкиваться.

Как раз таки можно не вводить часы:минуты:секунды, но дата нужна обязательно.
0
0 / 0 / 0
Регистрация: 16.02.2017
Сообщений: 41
06.04.2019, 10:04  [ТС] 5
Пифагор, Все правильно поняли, моя проблема в том что я не особо понимаю синтаксис дат...
Отталкиваться нужно от нынешней даты, потому что в инпут прописывают дату на будущее. Надеюсь все понятно разъяснил. Что прописать в коде, чтобы я правильно получал миллисекунды?
0
346 / 321 / 203
Регистрация: 27.06.2014
Сообщений: 762
06.04.2019, 11:57 6
Цитата Сообщение от FillPower Посмотреть сообщение
то я должен получить эту дату в миллисекундах.
Так?

https://codepen.io/arcmag/pen/ZZOoyq?editors=1010

HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<label>
  Дни
  <input type="number" id="days">
</label>
<label>
  Часы
  <input type="number" id="hours">
</label>
<label>
  Минуты
  <input type="number" id="minutes">
</label>
<label>
  Секунды
  <input type="number" id="seconds">
</label>
- Милисекунд =
<output id="result"></output>
Javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const MILISECOND_TIME = 1;
const SECOND_TIME = MILISECOND_TIME * 1000;
const MINUTE_TIME = SECOND_TIME * 60;
const HOUR_TIME = MINUTE_TIME * 60;
const DAY_TIME = HOUR_TIME * 24;
 
const dataTime = [
  {elem: document.querySelector(`#seconds`), time: SECOND_TIME},
  {elem: document.querySelector(`#minutes`), time: MINUTE_TIME},
  {elem: document.querySelector(`#hours`), time: HOUR_TIME},
  {elem: document.querySelector(`#days`), time: DAY_TIME}
];
 
const resultElement = document.querySelector(`#result`);
 
dataTime.forEach(it =>
  it.elem.addEventListener(`input`, () => 
    resultElement.innerHTML = dataTime.reduce((total, it) => total += it.elem.value * it.time, 0)
  )
);
0
0 / 0 / 0
Регистрация: 16.02.2017
Сообщений: 41
06.04.2019, 12:03  [ТС] 7
arcmag, К сожалению не так, но это приму к сведению, спасибо
Ниже показал как нужно вводить врем
0
Миниатюры
Как принимать в Date только ЧЧ:ММ:СС?  
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.04.2019, 12:03

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь или здесь.

Как сделать так, чтобы тип данных DATE при заполнении принимал только год?
Приветствую! Дали задание на домашку создать БД Библиотека. В таблице Книга есть поле &quot;Год...

Как переопределить функцию так, чтобы она не только могла принимать разные параметры, но и возвращать тоже разные?
То есть я считаю несправедливым, если такое проканывает: void f () {;} void f (int) {;} а...

Принимать данные только со второй клавиатуры
Здравствуйте, увлекаюсь программированием на python3 и в голову закралась идея создать одну...

ComboBox в dataGridViev с возможностью принимать только два значения
guten Tag Есть dataGridView, при запуске программы он заполняется из БД, вот таким вот образом:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.