从javascript中的csv文件中删除空单元格(行)

问题描述 投票:0回答:1

enter image description here我正在调用一个csv文件在chart.js中制作一个图表。它将数据分为两个数组,但是数据(csv文件)在底部包含两个空行,从而创建了两个空数据点。我已经尝试了这行代码来尝试消除空数据点,但似乎只删除了一个(底部有两个空行)。我有做错什么吗,还是有更好的方法呢?

    if(rows[rows.length-1] ===""){
        rows.pop()
    }

完整代码在这里:

      async function getData() {
        // const response = await fetch('testdata.csv');
        var response = await fetch('https://www.bankofcanada.ca/valet/observations/FXCADUSD/csv?recent_weeks=1');
        var data = await response.text();
        data = data.replace(/"/g,"");

        var years = [];
        var temps = [];
        var rows = data.split('\n').slice(9);

        if(rows[rows.length-1] ===""){
            rows.pop()
        }

        rows.forEach(row => {
          var cols = row.split(",");
          years.push(cols[0]);
          temps.push(0 + parseFloat(cols[1]));
        });
        console.log (years, temps );
        return { years, temps };

javascript chart.js
1个回答
0
投票

如果您知道最后两行为空,请使用sliceArray.prototype.slice)将其切成薄片

 rows = rows.slice(0, rows.length - 2);

let a = [1,2,3,4,5];
a = a.slice(0, a.length-2);


console.log(a);
© www.soinside.com 2019 - 2024. All rights reserved.