Maison >interface Web >js tutoriel >Comment exporter un tableau JavaScript vers un fichier CSV côté client ?

Comment exporter un tableau JavaScript vers un fichier CSV côté client ?

Linda Hamilton
Linda Hamiltonoriginal
2024-12-12 20:31:11228parcourir

How to Export a JavaScript Array to a CSV File Client-Side?

Exportation des données de tableau JavaScript vers CSV côté client

Question :

Comment peut-on J'exporte un tableau de données au format JavaScript vers un fichier CSV sur le client côté ?

Réponse :

En utilisant JavaScript natif, vous pouvez transformer vos données au format CSV correct, ce qui implique de joindre des lignes et de les séparer par des virgules. Voici une explication étape par étape :

1. Créez le contenu CSV :

// Assuming an array of arrays
const rows = [
    ["name1", "city1", "some other info"],
    ["name2", "city2", "more info"]
];

// Initialize CSV content
let csvContent = "data:text/csv;charset=utf-8,";

// Loop through rows and join them with commas
rows.forEach((rowArray) => {
    let row = rowArray.join(",");
    csvContent += row + "\r\n";
});

2. Téléchargez le fichier CSV :

// Encode the CSV content
var encodedUri = encodeURI(csvContent);

// Open the downloaded window with the encoded URI
window.open(encodedUri);

3. Spécifier le nom du fichier (facultatif) :

Si vous souhaitez spécifier un nom de fichier particulier, vous devrez utiliser une approche différente :

// Create a hidden <a> DOM node
var link = document.createElement("a");

// Set download attributes
link.setAttribute("href", encodedUri);
link.setAttribute("download", "my_data.csv");

// Append to body (required for Firefox)
document.body.appendChild(link);

// Download the file
link.click();

Cette approche modifiée vous permet pour spécifier le nom du fichier comme "my_data.csv" dans cet exemple.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn