PROGRAMMIAMO
JS - Calcoli con le date
Costruttore con parametri

Nella lezione precedente abbiamo visto come si può usare il costruttore Date() per creare una nuova istanza (cioè in pratica un nuovo oggetto) della classe Date:

var oggi = new Date();

In alcuni casi non si vuole usare la data del sistema (il proprio PC), ma si vuole dichiarare un oggetto Date inizializzando con un data diversa. Questo può essere fatto usando il costruttore con parametri: in pratica basta mettere fra le parentesi tonde di Date() i valori iniziali che si desiderano usare. Si consideri l'esempio seguente:

var ieri = new Date(2012,2, 27);

In questo caso la variabile ieri viene inizializzata con la data 27 marzo (si ricordi che 2 indica il terzo mese) dell'anno 2012.

Il costruttore con parametri consente di specificare anche l'ora, i minuti etc. secondo la seguente sintassi:

new Date(year, month, day, hour, minutes, seconds, milliseconds);

Si osservi l'ordine dei parametri: l'anno e il mese devono essere sempre indicati, mentre il giorno, l'ora, i minuti etc. sono opzionali.

 

Esempio: calcolo giorno della settimana

Come semplice esempio di uso del costruttore con parametri consideriamo il seguente form:

giorno: mese: anno:

Il codice corrispondente è questo

<form action="">
<p>
giorno:
<select id="giorno">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="14">14</option>
<option value="15">15</option>
<option value="16">16</option>
<option value="17">17</option>
<option value="18">18</option>
<option value="19">19</option>
<option value="20">20</option>
<option value="21">21</option>
<option value="22">22</option>
<option value="23">23</option>
<option value="24">24</option>
<option value="25">25</option>
<option value="26">26</option>
<option value="27">27</option>
<option value="28">28</option>
<option value="29">29</option>
<option value="30">30</option>
<option value="31">31</option>
</select>
mese:
<select id="mese" >
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
<option value="4">4</option>
<option value="5">5</option>
<option value="6">6</option>
<option value="7">7</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
</select>
anno:
<input type="text" id="anno" size="5">
<input type="button" value="Calcola" onclick="calcola()">
</p>
</form>

Inserendo una data e cliccando su Calcola viene visualizzato il giorno della settimana corrispondente. Lo script associato è questo:

<script type="text/javascript">
function calcola()
{
var giorno = document.getElementById("giorno").value;
var mese = document.getElementById("mese").value - 1;
var anno = document.getElementById("anno").value;
var data = new Date(anno,mese,giorno);
switch (data.getDay())
{
case 0:
  alert("domenica");
  break;
case 1:
  alert("lunedì");
  break;
case 2:
  alert("martedì");
  break;
case 3:
  alert("mercoledì");
  break;
case 4:
  alert("giovedì");
  break;
case 5:
  alert("venerdì");
  break;
case 6:
  alert("sabato");
  break;
}
}
</script>

Si osservi come il costruttore con parametri sia stato usato per definire un nuovo oggetto Date (di nome data) e inizializzarlo con la data (anno, mese, giorno) acquisita dal form.

 

precedente - successiva

Sito realizzato in base al template offerto da

http://www.graphixmania.it