CSV-Dateien (Comma-Separated Values) sind ein gängiges Format zum Speichern tabellarischer Daten. Um Daten aus einer CSV-Datei mit JavaScript zu lesen, können wir externe Bibliotheken verwenden oder unsere eigenen Parsing-Funktionen implementieren.
Verwendung der jQuery-CSV-Bibliothek
jQuery-CSV ist ein beliebte Bibliothek zum Parsen von CSV-Daten in JavaScript. Es bietet eine praktische Methode, $.csv.toObjects(csv), die CSV-Daten automatisch einem Array von Objekten zuordnet.
// Assuming you've included jQuery-CSV in your HTML var data = $.csv.toObjects(csv); // Output [ { heading1: "value1_1", heading2: "value2_1", ... }, { heading1: "value1_2", heading2: "value2_2", ... }, ... ];
Benutzerdefinierte Parsing-Funktion
Wenn Sie keine externen Bibliotheken verwenden möchten, können Sie Ihre eigene Parsing-Funktion erstellen. Hier ist ein vereinfachtes Beispiel:
function parseCSV(csv) { // Split the CSV into lines var lines = csv.split("\n"); // Extract the header line var headers = lines[0].split(","); // Remove the header line from the CSV lines.shift(); // Loop through the remaining lines and create objects var data = []; for (var i = 0; i < lines.length; i++) { // Split the line into values var values = lines[i].split(","); // Create an object using the headers as keys data.push( Object.fromEntries( headers.map((h, idx) => [h, values[idx]]) ) ); } // Return the parsed data return data; }
Beispiel-CSV-Daten
heading1,heading2,heading3,heading4,heading5 value1_1,value2_1,value3_1,value4_1,value5_1 value1_2,value2_2,value3_2,value4_2,value5_2
Ausgabe
[ { heading1: "value1_1", heading2: "value2_1", ... }, { heading1: "value1_2", heading2: "value2_2", ... }, ... ];
Hinweis: Die Beispiel-CSV-Daten haben keine Zeilenumbrüche. Es wird empfohlen, Zeilenumbrüche hinzuzufügen, um die Daten vor dem Parsen in eine gültige CSV-Datei zu verwandeln.
Das obige ist der detaillierte Inhalt vonWie lese ich Daten aus einer CSV-Datei mit JavaScript?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!