Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Mengeksport Tatasusunan JavaScript ke Bahagian Klien Fail CSV?

Bagaimana untuk Mengeksport Tatasusunan JavaScript ke Bahagian Klien Fail CSV?

Linda Hamilton
Linda Hamiltonasal
2024-12-12 20:31:11223semak imbas

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

Mengeksport Data Tatasusunan JavaScript ke CSV di Bahagian Pelanggan

Soalan:

Bagaimana boleh Saya mengeksport tatasusunan data dalam format JavaScript ke fail CSV pada klien sebelah?

Jawapan:

Menggunakan JavaScript asli, anda boleh menukar data anda kepada format CSV yang betul, yang melibatkan penggabungan baris dan mengasingkannya dengan koma. Berikut ialah penjelasan langkah demi langkah:

1. Cipta Kandungan 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. Muat turun Fail CSV:

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

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

3. Nyatakan Nama Fail (Pilihan):

Jika anda ingin menentukan nama fail tertentu, anda perlu menggunakan pendekatan yang berbeza:

// 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();

Pendekatan yang diubah suai ini membolehkan anda untuk menentukan nama fail sebagai "my_data.csv" dalam contoh ini.

Atas ialah kandungan terperinci Bagaimana untuk Mengeksport Tatasusunan JavaScript ke Bahagian Klien Fail CSV?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn