# Frage zu Parametern bei der toLocaleString-Funktion von Date



## pkm (1. Sep 2020)

Ich habe jetzt wirklich keine Ahnung, was ichfalsch mache, aber der folgende Code, wo ich festlege, dass die Monatsnamen als 2-stellige Strings angezeigt werden sollen und die Tage auch:


```
<!DOCTYPE html>
<html>
<body>

<script>
  
  var textbody = new Date().toLocaleString('de-DE', {year: 'numeric', month: '2-digit', day: '2-digit'} + '       ');

  alert(textbody);

</script>

</body>
</html>
```


... der liefert mir 1.9.2020, 13:10:36  anstatt 01.09.2020, 13:10:36.

Dabei habe ich doch die Parameter richtig gesetzt?


----------



## kneitzel (1. Sep 2020)

Was willst Du mit dem `+ '       '` erreichen? Dadurch machst Du ja aus dem Object Literal einen String - und der wird natürlich nicht so verstanden, wie du es wünscht.

Daher: Nimm das erst einmal raus und du erhältst die Ausgabe "01.09.2020".

Und wenn Du die Uhrzeit auch noch dahinter haben willst, dann mach z.B.:
`var textbody = new Date().toLocaleString('de-DE', {year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit'});`

Ob das optimal ist oder nicht, darf man mich nicht fragen. JavaScript vermeide ich so gut es eben geht


----------



## kneitzel (1. Sep 2020)

Um das evtl. noch zu veranschaulichen: Mach die eine Zeile nur mal zu:
`var textbody = {year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', second: '2-digit'} + 'text';`

Dann bekommst Du ausgegeben, was zu so einem Konstrukt wird. Das Object Literal wird dann zu einem String gemacht und wird "[object Object]" und da wird dann das "text" drangehängt.... also absolut nicht mehr das, was da erwartet wird.


----------



## pkm (1. Sep 2020)

Vielen Danke, jetzt scheint es zu funktionieren  Das war mir eine große Hilfe.


----------

