Получение ссылочной ошибки (в отладчике chrome) при использовании метода Math.floor - PullRequest
0 голосов
/ 27 января 2019

Привет, когда я запускаю эту функцию, переменная index становится

reference error: index is not defined at eval

Мой код:

function getReferenceDate(){
  //let today = "01/18/2019"
  var now = moment();
  let day = now.day()
  let refOffset = day-1
  now.day()!=0?refOffset = (day-1):refOffset=6
  now.subtract(refOffset,"days")
  return now
}

function getNextIndex(first, frequency){
  let ref = getReferenceDate()
  let thisFirst = moment(first)
  let isBefore = thisFirst.isBefore(ref,"days")
  if(isBefore){
    let diff = ref.diff(thisFirst,"days")
    let nextIndex = Math.abs(Math.floor(((frequency*7)-diff)/7))%frequency
    return nextIndex
  }else{
    let diff = thisFirst.diff(ref,"days")
    let index =(diff+1)/7
    index = Math.floor(index)
    return index
  }
}

getNextIndex("20190218",1)

Очевидно, index должно преобразовываться в целое число и возвращаться функцией. Но все, что я получаю, это ошибка? Я использую moment.js, откуда берутся методы diff и moment.

РЕДАКТИРОВАТЬ: фактически только ошибка отладчика Chrome отображается сразу после выхода из

index = Math.floor(index)

и на следующую строку (возврат ..). После небольшого тестирования я обнаружил, что в итоге получаю ожидаемый результат. Возможно, это нюанс отладчика?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...