• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Spalten aus Script Datei auslesen

Hugo

Neues Mitglied
Hallo,

ich bin neu hier und habe nur wenig Erfahrung mit HTML und Java Script.

Ich möchte mit HTML mittels einer Scriptdatei (Script.js) die 2 Spalten hinter dem Datum der Scriptdatei (years.js) summieren. Diese years.js wird von einem Datenloger erstellt und täglich neu geschrieben.

Hier mein HTML Code:
HTML:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Daten auslesen und summieren</title>
</head>
<body>
    <h1>Daten auslesen und summieren</h1>
    <p>Die Summe der 2. und 3. Spalte nach dem Datum betr&auml;gt: <span id="sum">Lade...</span></p>
    <script src="script.js"></script>
</body>
</html>


Hier der Script.js Code:

Javascript:
// Funktion zum Laden der Daten aus der years.js-Datei

function loadYearsData(callback) {
    // Pfad zur years.js-Datei, wenn sie im selben Verzeichnis wie diese Datei liegt
    const yearsJsPath = 'years.js';

    // AJAX-Anfrage, um die years.js-Datei zu laden
    const xhr = new XMLHttpRequest();
    xhr.onreadystatechange = function () {
        if (xhr.readyState === 4 && xhr.status === 200) {
            const data = xhr.responseText;
            callback(data);
        }
    };

    xhr.open('GET', yearsJsPath, true);
    xhr.send();
}

// Funktion zum Summieren der ersten drei Spalten
function sumColumns(data) {
    const lines = data.split('\n');
    let sum = 0;

    for (const line of lines) {
        const columns = line.split('|');

        if (columns.length >= 5) {
            const col2 = parseInt(columns[1]);
            const col3 = parseInt(columns[2]);
            sum += col2 + col3;
        }
    }
    return sum;
}

// Daten aus years.js laden und Summe berechnen
loadYearsData(function (data) {
    const totalSum = sumColumns(data);
    document.getElementById('sum').textContent = totalSum;
});

Hier die Daten der Years.js:

Javascript:
ye[yx++]="01.01.23|6801405|6789057|6734764|1217690|0"
ye[yx++]="01.01.22|8396259|8453029|8256176|0|0"
ye[yx++]="01.01.21|7050019|7047963|7069748|5171170|0"
ye[yx++]="01.01.20|7868940|7937092|7878524|14149512|0"
ye[yx++]="01.01.19|6313890|6425680|6309714|0|0"
ye[yx++]="01.01.18|8234804|8311163|8284378|0|0"
ye[yx++]="01.01.17|6593759|6723323|6654051|0|0"
ye[yx++]="01.01.16|7225552|7312883|7284658|0|0"
ye[yx++]="01.01.15|7609648|7574245|7623998|0|0"
ye[yx++]="01.01.14|4245741|4157458|4152106|0|3317839"

Mein Code scheint nicht zu funktionieren.
Ich hoffe mir kann jemand helfen!
Danke!
 

Anhänge

  • script.zip
    1,3 KB · Aufrufe: 0
Zuletzt bearbeitet von einem Moderator:
Werbung:
Mein Code scheint nicht zu funktionieren.

Was für eine Fehlermeldung siehst Du denn in der Javascript-Konsole?
Aus dem obigen Beispiel kann ich nicht richtig erkennen wie der Code eigentlich gestartet werden sollte. In der Javascript-Datei die Du inkludierst werden drei Funktionen definiert, aber wie sollten die gestartet werden?
 
Das weiß ich eben nicht. Wie gesagt Anfänger.
Ich dachte man könnte mir heir auf die Sprünge helfen.
 
Werbung:
Zurück
Oben