1
votes

Comment convertir une date et une heure données en heure d'époque en javascript?

J'essaie de convertir la date et l'heure obtenues de l'interface utilisateur en heure de l'époque.

Veuillez trouver mon code ci-dessous.

function calculateEpoch(){ 
    var date = 11/1/2019 //obtained from ui
    var time = 11:00 //obtained from ui
    var date1 = date +"" + time;

    var someDate = new Date(date1);
    console.log("someDate : ",someDate) //getting error like Invalid Date
    someDate1 = someDate.getTime();
    console.log("someDate : ",someDate1) //getting error like someDate1 is not defined
    return someDate1 ;
}

Quelqu'un pourrait-il m'aider? avec le code de travail.


4 Réponses :


0
votes

Ajoutez "" au lieu de "" dans var date1 = date + "" + heure; Cela fonctionnera

function calculateEpoch(){ 
var date = '11/1/2019' //obtained from ui
    var time = '11:00' //obtained from ui
    var date1 = date +" " + time; // <---add space here

    var someDate = new Date(date1);
    console.log("someDate : ",someDate) //getting error like Invalid Date
    someDate1 = someDate.getTime();
    console.log("someDate : ",someDate1) //getting error like someDate1 is not defined
 return someDate1 ;
}


0 commentaires

-1
votes
function calculateEpoch(){ 
    var date = '11/1/2019' //obtained from ui
    var time = '11:00' //obtained from ui
    var date1 = `${date} ${time}`; // add a space in between the date and time,
    // your date1 was invalid because it 11/1/2019:11:00

    var someDate = new Date(date1);
    console.log("someDate : ",someDate) //getting error like Invalid Date
    someDate1 = someDate.getTime();
    console.log("someDate : ",someDate1) //getting error like someDate1 is not defined
    return someDate1 ;
}
hope this helps

0 commentaires

-1
votes

Vos 2 premières lignes de date et heure sont obtenues à partir de l'interface utilisateur donc je suppose que ce n'est pas le problème ici. (Ils doivent être une chaîne)

Le problème vient de date1.

Vous avez: 11/1/201911: 00 Invalide

Devrait être: 11/1/2019 11:00

Vous y étiez presque mais il vous suffisait d'ajouter un espace entre date et heure.

function calculateEpoch(){ 
    var date = '11/1/2019'; //obtained from ui
    var time = '11:00'; //obtained from ui
    var date1 = date + " " + time;

    var someDate = new Date(date1);
    console.log("someDate : ", someDate) //getting error like Invalid Date
    someDate1 = someDate.getTime();
    console.log("someDate : ", someDate1) //getting error like someDate1 is not defined
    return someDate1;
}
calculateEpoch();


0 commentaires

-1
votes

Voici une façon de le faire où la connexion à l'interface utilisateur et les paramètres de construction Date sont explicites:

function calculateEpoch() {
    var year = new Number(document.getElementById('uiYear').value);
    var month = new Number(document.getElementById('uiMonth').value) - 1;
    var day = new Number(document.getElementById('uiDay').value);
    var hours = new Number(document.getElementById('uiHour').value);
    var minutes = new Number(document.getElementById('uiMinute').value);
    var seconds = new Number(document.getElementById('uiSecond').value);
    var d = new Date(year, month, day, hours, minutes, seconds, 0);
    var millis = d.getTime();
    return millis
}

Cette fonction (sous un nom différent) peut en fait être vue en action avec son interface utilisateur sur https://currentmillis.com sur le côté droit.

Notez que le paramètre de mois de ce constructeur Date est de base zéro (janvier est 0, décembre est 11): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#Syntax


0 commentaires