Как разобрать с 8-й строки вместо первой строки в JavaScript? - PullRequest
0 голосов
/ 04 октября 2019

Я пытаюсь разобрать файл xls в реакции + JavaScript. Я пытаюсь разобрать xls из строки № 8, а не из 0, чтобы получить ожидаемый результат, подобный этому

[{

    Emp. No:”116”,
    Amp. Name:”vikas kumar”,
    Card No:”39001”,
    “Att Date”:”01-Aug-2019”
    },
    {

    Emp. No:”116”,
    Amp. Name:”vikas kumar”,
    Card No:”39001”,
    “Att Date”:”02-Aug-2019”
    },

    {

    Emp. No:”116”,
    Amp. Name:”vikas kumar”,
    Card No:”39001”,
    “Att Date”:”03-Aug-2019”
    }
    ]

Вот мой код

https://stackblitz.com/edit/react-e9zsto

Вотмой xls файл

https://filebin.net/jm37356p8nkzgycm

 xslToJson = workbook => {
  var data = [];
  var sheet_name_list = workbook.SheetNames;
  sheet_name_list.forEach(function(y) {
    var worksheet = workbook.Sheets[y];
    var headers = {};

    for (var z in worksheet) {
      console.log(z);
      console.log('zzz');
      // || z==='B2' ||  z==='B4' ||   z==='E4' ||z==='B6' ||z==='E6'||z==='B8'||z==='C8'||z==='F8' || z==='G8'
      if (z[0] === "!" ) continue;
      //parse out the column, row, and value
      console.log('rowww',z);
      var tt = 0;
      for (var i = 0; i < z.length; i++) {
        console.log(z[i])
        console.log('z[i]')
        if (!isNaN(z[i])) {
          tt = i;
           console.log('ttttttt',tt)
           console.log('zzzzz',z)

          break;
        }
      }
      var col = z.substring(0, tt);
      var row = parseInt(z.substring(tt));
      var value = worksheet[z].v;
      console.log(value)
       console.log("value")
      //store header names
      if (row == 1 && value) {
        headers[col] = value;
        continue;
      }
console.log(headers)
  console.log("headers")
      if (!data[row]) data[row] = {};
      data[row][headers[col]] = value;
    }
    console.log(data)
    //drop those first two rows which are empty
    data.shift();
    data.shift();
  });
  return data;
};

в настоящее время код работает, когда заголовок находится в 0 позиции any update ?

...