Der Martin: Datum ohne wochenende ausgeben

Beitrag lesen

Hi,

Ich sollte zuerst das heutige Datum auslesen und +2 tage rechnen. Das Problem ist, dass Wochenendtage nicht migerechnet werden dürfen.

das sollte mittlerweile jeder verstanden haben. ;-)

Ich habe bereits einiges Versucht, komme jetz aber nicht mehr weiter.

Wir auch nicht, solange du nur ein paar Stücke Code zeigst, aber nicht erklärst, was dir daran nicht passt bzw. wo es falsch läuft. Damit dir jemand bei der Fehlersuche *helfen* kann, musst du den Fehler zunächst mal *beschreiben*. Und zwar nicht nur mit "funktioniert nicht".

Ohne diese Vorarbeit von dir kann ich auch nur die Codeauszüge ansehen und offensichtliche, formale Fehler aufzeigen, die *vielleicht* mit deinem Problem zu tun haben, vielleicht aber auch nicht.

var wtage = Array("So", "Mo", "Di", "Mi", "Do", "Fr", "Sa");

for (var i = 0; i < 40; i+= 1) {
  var z = addiereWochentage(i);
  console.debug(i, wtage[z.getDay()], z);
}

  
Üblich ist die Schreibweise i++ im Kopf der for-Schleife. Deine Schreibweise mit i+=1 ist nicht falsch und bewirkt dasselbe, man stolpert aber kurz darüber, weil es ungewohnt ist.  
  

> ~~~html

<input  type="button" value="rechnen" onclick="addiereWochentage(tage)">  

> <p id="addiereWochentage"></p>

Hier sehe ich Konfliktpotential, weil die Funktion den gleichen Bezeichner hat wie das HTML-Elementobjekt. Ich bin mir nicht sicher, ob das problematisch ist, würde dir aber raten, von der mehrfachen Verwendung des gleichen Bezeichners abzusehen.

Und mein zweiter Versuch:

<input class="Button" type="button" value="bla" onclick="LFBS()">

»»

function LFBS(LFBS)

{

var heute = new Date();

  
Noch schöner: Die Funktion heißt gleich wie ihr Funktionsargument, und weiter unten sehe ich, dass auch noch ein Element mit derselben ID im Dokument existieren soll (das hier aber nicht gezeigt wurde).  
  

> ~~~javascript

if (heute.getDay() == 0) {  

>   heute = heute.getMilliseconds() + 86400000  
> } else if (heute.getDay() == 6) {  
>   heute = heute.getMilliseconds() + 172 800 000  
> }

Was ist das? Drei Zahlen??

var (tag, monat,jahr,starttag,startmonat,startjahr +2);

Und das? Das Keyword var leitet die Deklaration von lokalen Variablen ein. Eine Klammer mit ein paar Werten drin, die so aussieht, als wolle sie ein Funktionskopf sein, gehört dort nicht hin.

Jedoch liefert mir das eine gar kein ergebniss bzw das andere ein Flasches

Zumindest die zwei Syntaxfehler sollte dir dein Browser um die Ohren hauen. Mehr kann ich anhand der mageren Beschreibung noch nicht erkennen.

So long,
 Martin

--
Schon gewusst, dass Aftershave trotz des Namens eigentlich eher fürs Gesicht gedacht ist?
Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(