function exportCsv(arrayData: any[], filename: string, delimiter = ','): void { if (arrayData === undefined) { return; } const header = Object.keys(arrayData[0]).join(delimiter) + '\n'; let csv = header; arrayData.forEach(obj => { let row = []; for (const key in obj) { if (obj.hasOwnProperty(key)) { row.push(obj[key]); } } csv += row.join(delimiter) + '\n'; }); const csvData = new Blob([csv], {type: 'text/csv'}); const csvUrl = URL.createObjectURL(csvData); // csvUrl = 'data:text/csv;charset=utf-8,' + encodeURI(csv); let downloadLink = document.createElement('a'); downloadLink.href = csvUrl; downloadLink.target = '_blank'; downloadLink.download = filename + '.csv'; downloadLink.style.display = 'none'; document.body.appendChild(downloadLink); downloadLink.click(); } function removeSpecialChar(str: string): string { if (str === null || str === '') { return ''; } return str.replace(/[^a-zA-Z0-9 ]/g, ''); } export { exportCsv };