Convertir un tableau de données JavaScript en CSV
Concept et utilisation
La fonction arrayToSV()
permet de convertir un tableau de données JavaScript (Array
) en format CSV.
Il est possible de définir le jeu de données ainsi que les séparateurs de données.
Fonction
arrayToSv()
Retourne des données en format CSV à partir d'un tableau de données JavaScript (
Array
).- Syntaxe
arrayToSV(donnees, options);
- Paramètres
donnees
(Array)Le paramètre
donnees
de la fonctionarrayToSV()
définit le tableau de données JavaScript à convertir en format CSV.options
(Object)Le paramètre
options
de la fonctionarrayToSV()
définit les séparateurs de données à utiliser pour convertir les données.- Propriétés
lineDelimiter
La propriété
lineDelimiter
du paramètreoptions
définit les séparateurs de lignes.
Si cette propriété est omise, la valeur par défaut "\n
" sera utilisée.columnDelimiter
(String)La propriété
columnDelimiter
du paramètreoptions
définit les séparateurs de colonnes.
Si cette propriété est omise, la valeur par défaut ";
" sera utilisée.columnQuote
(String)La propriété
columnQuote
du paramètreoptions
définit les caractères de citation à ajouter avant et après une valeur contenant les caractères utilisés pour les séparateurs.
Si cette propriété est omise, la valeur par défaut "'
" sera utilisée.
Exemple de conversion d'un tableau de données JavaScript en format CSV
var donnees = [
["Entête 1", "Entête 2"],
["Valeur 1", "Valeur 2"],
["Valeur 3", "Valeur 4"]
];
var options = {
lineDelimiter: '\n',
columnDelimiter: ';',
columnQuote: "'"
};
arrayToSV(donnees, options);
// renvoie : "Entête 1;Entête 2
// Valeur 1;Valeur 2
// Valeur 3;Valeur 4"
Code source de la fonction
function arrayToSV(a, b) {
var l = b.lineDelimiter || '\n',
c = b.columnDelimiter || ';',
q = q.colomnQuote || "'",
d = [];
a.forEach(function(r) {
var t = [];
r.forEach(function(v) {
t.push((v.indexOf(l) > -1 || v.indexOf(c)) ? q + v + q : v)
});
d.push(t);
});
return d;
}
Dernière mise à jour le .