Newsgroup: it.comp.lang.javascript
Titolo: Data odierna da parametro

Con new Data() ottengo la data odierna.
Posso ottenere lo stesso passando qualche parametro a Data()
p.e. con Data(0) ottengo 1970.


Non ho ben capito la domanda, sai? Se � "posso evitare di usare new per
ottenere un oggetto Date" la risposta � no; a prescindere che tu voglia
la data odierna o meno.

ZER0 ha scritto quanto segue il 21/08/2012 20.12>> On 8/21/12 7:25 PM, 

No, la domanda � diversa, scusandomi per la poco chiarezza provo a 
specificarla.
Ho un'istruzione tipo:
 
var data=new Data(<?php (isset($inizio) ? echo $inizio: echo "COSA") ?>);
 
imposto la data inziale dal server. Se la variabile � impostata la metto 
in Data altrimenti non saprei cosa metterci per avere la data odierna.
Comunque risolvo da js con un if var inizio="" allora new Data() ma mi 
chiedevo se c'� una soluzione pi� elegante senza if ponendo direttamente 
un valore come parametro di Data.

Corset ha scritto quanto segue il 21/08/2012 20.47>

scusami il problema � ancora un po' diverso; cos� basterebbe passare una 
stringa vuota in "COSA".
 
var par=(<?php (isset($inizio) ? echo $inizio: echo "COSA") ?>);
var data=new Data(par);

attualmente sto usando un costrutto come:
 > var data = par ? new Date(par) : new Date();
quindi il tuo post mi che non si pu� usare per la data odierna un
new Date(par);
con un qualche valore per par al posto di
new Date();
?

 ?
 
Te l'ho scritto nel mio post, se vuoi usare la data del client ï¿½ e non
del server, ma bisogna vedere come gestisci `$inizio` e tutte le
discrepanze di orario e di fusi ï¿½ puoi avere per la data odierna:
 
    var date = new Date(par);
 
Se `par` ï¿½ impostato con:
 
    var par = Date.now();
 
O:
 
    var par = new Date().getTime();
 
O anche, ora che ci penso, a:
 
    var par = Date();
 
Che restituisce una stringa, invece che il tempo in millsec, con la data
odierna, che poi viene nuovamente data in pasto al costrutto `Date` per
ottenere un oggetto.

 ottenere un oggetto.
 
Domanda di stile: un qualche messaggio prima, avevi proposto anche 
undefined, preferendo pero' un valore calcolato.
 
Perché?
 
 
Personalmente io preferirei (nel senso di "troverei più bello") 
l'undefined, piuttosto che calcolare la data corrente per poi passarla al 
costruttore d'un altro oggetto per ottenere la data corrente
 
 
-- 
By ZeD

 costruttore d'un altro oggetto per ottenere la data corrente
 
Sono d'accordo, ma se la domanda è "cosa passare a `par` per poter avere
la data corrente", `undefined` non è la risposta. Quindi, per rispondere
in modo completo all'OP, ho elencato i possibili valori da passare a
`par` per rispondere alla domanda. Usando `undefined`, devi avere – come
ho mostrato - forzatamente un codice del tipo:
 
    var date = par ? new Date(par) : new Date();
 
Se il tuo "scopo" è avere:
 
    var date = new Date(par);
 
Devi per invece passare a `par` un valore valido che il costruttore
possa interpretare come data, e `undefined` non va bene; mentre va bene
il tempo in millisecondi (`Date.now()` o `new Date().getTime()`) oppure
la data in formato stringa (`Date()`).

 - see in 00index.htm
 Dates - miscdate.htm estrdate.htm js-dates.htm pas-time.htm critdate.htm etc.