Дайте метку времени в формате hh:mm:ss.SSS
, как разделить эту метку времени на целое число и получить метку времени в качестве результата?
Например, если дана метка времени 00:03:00:090
, если я разделите это на 3
, я бы ожидал получить отметку времени 00:01:00:030
.
Если бы у меня была отметка времени 00:05:35:100
и разделить ее на 3
, я бы ожидал 00:01:51:700
как результат. Если бы я разделил на 2
, я бы ожидал 00:02:47:550
в результате.
$(window).on("load", function() {
$('#Btn_Calculate_Average').click(function (e) {
e.preventDefault();
Average();
});
function Average(){
let in_Time = $('#in_Time').val();
let in_valueSelected = $('#in_valueSelected').val();
var Average = in_Time / in_valueSelected;
$('#in_Result').val(Average);
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<div class="Dv">
<label for="in_Time">Time</label>
<input type="text" id="in_Time" value="00:05:35:100" >
</div>
<label for="in_valueSelected">Divide By:</label>
<input name="in_valueSelected" id="in_Média" type="text" value="3" list="lsit_valueSelected">
<datalist id="lsit_valueSelected">
<option value="1">
<option value="2">
<option value="3">
<option value="4">
<option value="5">
<option value="6">
<option value="7">
</datalist>
<button id="Btn_Calculate_Average">Calculate Average</button>
<div class="Dv">
<label for="in_Result">Media</label>
<input type="text" id="in_Result" value="" >
</div>
</div>
Разрешение
$(window).on("load", function () {
const toMilliseconds = (timestamp) => {
let [hours, minutes, seconds, milliseconds] = timestamp.split(':')
hours = +hours
minutes = +minutes
seconds = +seconds
milliseconds = +milliseconds
console.log(hours, minutes, seconds, milliseconds)
return (hours * 3.6e6) + (minutes * 60000) + (seconds * 1000) + milliseconds
}
const toTimestamp = (ms) => {
const hours = Math.floor(ms / 3.6e6)
ms = ms % 3.6e6
const minutes = Math.floor(ms / 60000)
ms = ms % 60000
const seconds = Math.floor(ms / 1000)
ms = ms % 1000
return `${hours}:${minutes}:${seconds}:${ms}`
}
// var in_Time = $('#in_Time').val();
// let in_valueSelected = $('#in_valueSelected').val();
$('#Btn_Calculate_Average').click(function (e) {
var ResultadoDaMedia = toTimestamp(toMilliseconds($('#in_Time').val()) / $('#in_valueSelected').val())
$('#in_Result').val(ResultadoDaMedia)
console.log(ResultadoDaMedia)
})
// var DIVISER =
// input.addEventListener('input', e => {
// console.log(output.textContent = toTimestamp(toMilliseconds(input.value) / 2));
// })
});
body {
background-color: rgba(255, 255, 255, 1);
margin: 0px; padding: 0px;
height: 100vh; width: 100%;
display: flex; flex-direction: column;
align-items: center; justify-content: flex-start;
overflow: scroll;
}
.container {
background-color: rgb(255, 255, 255);
margin: 5px; padding: 5px;
min-height: 500px; width: 100%;
max-height: 64px;
display: flex; flex-direction: column;
align-items:center; justify-content: flex-start;
overflow: scroll;
}
.Dv {
background-color: rgb(255, 255, 255);
margin: 5px; padding:10px;
height: auto; width: 100%;
display: flex; flex-direction: column;
align-items: center; justify-content: center;
overflow: hidden;
}
label, button{
margin: 4px;
}
input {
margin: 4px;
max-width: 150px;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="container">
<div class="Dv">
<label for="in_Time">Time</label>
<input type="text" id="in_Time" value="00:05:35:100">
</div>
<label for="in_valueSelected">Divide By:</label>
<input name="in_valueSelected" id="in_valueSelected" type="text" list="lsit_valueSelected">
<datalist id="lsit_valueSelected">
<option value="1">
<option value="2">
<option value="3">
<option value="4">
<option value="5">
<option value="6">
<option value="7">
</datalist>
<button id="Btn_Calculate_Average">Calculate Average</button>
<div class="Dv">
<label for="in_Result">Media</label>
<input type="text" id="in_Result" value="">
</div>
</div>