Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    JavaScript: calcolo differenza orari in minuti

    Salve, mi accingo a scrivere qualcosa in JavaScript e sto incontrando un problemino.
    Ho due variabile che contengono ora e minuti nella seguente forma:

    var orascelta1=eval("document.form4.orario_A_mattina_" +i1+".value");
    var limiteorascelta1=eval("document.form4.elementomatr ice1_"+n1+".value");

    con uso di eval ho, ad esempio, i seguenti risultati per i valori delle due variabili:

    orascelta1 è 08:40
    limiteorascelta1 è 13:00

    Il mio problema è calcolare i minuti di differenza tra limiteorascelta1 e orascelta1 , ossia voglio ottenere in minuti limiteorascelta1 - orascelta1

    Grazie in anticipo per l'aiuto

    (ps: io lavoro sempre in vbscript e con datediff risolvo)

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    titolo che piu' generico non si puo'
    per questa volta edito io, prossimamente la discussione viene direttamente chiusa/cestinata

  3. #3
    Chiedo scusa, so che il titolo deve essere esplicativo del problema da discutere.... ho semplicemente dimenticato di inserirlo.
    Non ricapiterà.
    Ammessa la mia colpa... puoi aiutarmi?
    Grazie in anticipo.

  4. #4
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    var orascelta1=document.form4.elements("orario_A_matti na_"+i1).value;
    var limiteorascelta1=document.form4.elements("elemento matrice1_"+n1).value;

    Per fare operazioni sugli orari crea due funzioni che trasformino il formato da te usato in minuti e viceversa ... poi viene tutto piu' facile

    ciao
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  5. #5
    Grazie per la risposta innanzitutto.
    Ovviamente ho già pensato a questo... è ovvio che estraendo l'ora dalla prima variabile e moltiplicandola per 60 + i minuti estratti sempre dalla prima variabile ottengo il totale minuti rispetto alle ore 00:00... lo stesso per la seconda variabile e poi i minuti totali della seconda - i minuti totali della prima mi danno ciò che cerco.
    Ovvio.
    Il punto è: esiste una funzione intrinseca al linguaggio che mi permette tutto questo?

  6. #6
    Moderatore di JavaScript L'avatar di br1
    Registrato dal
    Jul 1999
    Messaggi
    19,998
    Originariamente inviato da marco.agelao
    Il punto è: esiste una funzione intrinseca al linguaggio che mi permette tutto questo?
    E' ovvio che no, non ti avrei invitato a farle
    Il guaio per i poveri computers e' che sono gli uomini a comandarli.

    Attenzione ai titoli delle discussioni: (ri)leggete il regolamento
    Consultate la discussione in rilievo: script / discussioni utili
    Usate la funzione di Ricerca del Forum

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    non credo esista una funzione che fa ciò che chiedi.
    Per semplificare i calcoli da effettuare però credo convenga lavorare sui millisecondi, ti faccio un esempio:

    aa = new Date(0,0,0,8,40,0);
    bb = new Date(0,0,0,13,0,0);

    diff = (bb-aa)/60000;

  8. #8
    Grazie per la risposta Vindav.
    Ho lavorato, alla fine, convertendo in secondi come avevo scritto nel post precedente.
    Mi sarebbe piaciuto utilizzare una funzione intrinseca, se ci fosse stata, piuttosto che una soluzione così "empirica"... alla fine va comunque.
    In conclusione mi sembra che JavaScript non sia nulla di che... ci sto lavorando da oggi e mi sembra più che accessibile.
    Ovviamente ho tanti altri dubbi su cui interpellare chi ha più esperienza di me in questo linguaggio di scripting.
    Aprirò altri post a breve.. intanto grazie a tutti per l'aiuto.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.