Как разобрать данные, хранящиеся в массиве

Все, что происходит в браузере, связано с document . Когда вы переходите от текущего документа (страницы), он становится устаревшим, в том числе таймеры - как и ожидалось.

Так что вы пытаетесь здесь не просто использовать таймеры.

Вы может записать элемент localStorage (или sessionStorage) со временем начала таймера и когда он должен закончиться, и с новой страницы (при условии, что она получена от того же источника), вы читаете элемент и вычисляете разницу и запустить новый таймер (или добавить параметры как часть URL-адреса, к которому вы переходите).

1
задан Jack Bashford 16 January 2019 в 23:48
поделиться

3 ответа

Простой - map и split для каждой запятой, затем посмотрите индекс, для которого это должно быть: 116]

0
ответ дан Jack Bashford 16 January 2019 в 23:48
поделиться

Вы смешиваете несколько вещей. Что fileData делает (кажется, не используется)? И slice это не правильный способ сделать это.

Вместо этого попробуйте:

function get_Data(csv) {
    csv = csv.replace(/[\r\n]+/gi,"\n"); // reduce line endings into single LF chars
    rows = csv.split("\n"); // split into array of rows
    var result = [];
    for (var i in rows) result.push(rows[i].split(",")); // split each row
    return result;
}

(правка). Если вам нужны только последние X строк данных CSV, используйте:

function get_Data(csv,lastNumRows) { // get only the last <lastNumRows> rows
    csv = csv.replace(/[\r\n]+/gi,"\n"); // reduce line endings into single LF chars
    rows = csv.split("\n").slice(-lastNumRows); // split into array of rows
    var result = [];
    for (var i in rows) result.push(rows[i].split(",")); // split each row
    return result;
}
0
ответ дан RocketNuts 16 January 2019 в 23:48
поделиться

попробуйте, это должно работать. Я знаю положение данных, чтобы было легко разделить и найти термины и дату

var csv = document.getElementById("csvFile").innerHTML ;



function get_Data(data) {
    var result = {terms:[], hours:[] }
    var r = data.split(/\r\n|\r|\n/);

    r.forEach(function(element) {
    if (element !== "" && element.length>1){
      var term = element.split(",")[2]
      var date = new Date(element.split(",")[0])
      var hour =  date.getHours() + ":" + (date.getMinutes()<=9 ? "0" + date.getMinutes() : date.getMinutes());
      
      result.terms.push(term);
      result.hours.push(hour)
      }
    });
 return result;
} 

console.log( get_Data(csv))
<div id="csvFile" style="display:none;">
11/28/2018 7:30,1128,-2.122,86.2,34.06,1.178,320.2,20.4
11/28/2018 7:45,1129,-2.325,85.6,34.54,1.771,325.5,30.72
11/28/2018 8:00,1130,-2.679,85.7,30.73,1.764,312.1,28.98
11/28/2018 8:15,1131,-2.872,88,34.55,1.073,306.6,25.65
11/28/2018 8:30,1132,-2.953,90.7,35.25,1.247,311.2,30.06
11/28/2018 8:45,1133,-3.064,93.3,35,1.449,312.6,30.13
11/28/2018 9:00,1134,-2.771,91.5,33.44,0.988,311,28.27
</div>

0
ответ дан Alen.Toma 16 January 2019 в 23:48
поделиться
Другие вопросы по тегам:

Похожие вопросы: