JavaScript Taskbook Level 9.10

Задание 1

Given a table. The user clicks on two cells in turn, highlighting them. Make all the cells located in order between those the user clicked on highlight in red.

Задание 2

Write code that will determine the maximum nesting level of a multidimensional array.

Задание 3

Given a list of some data for certain dates, stored in the following structure:

javascriptlet data = [
  {
    year:  2019,
    month: 11,
    day: 20,
    data: ['array with data']
  },
  {
    year:  2019,
    month: 11,
    day: 21,
    data: ['array with data']
  },
  {
    year:  2019,
    month: 12,
    day: 25,
    data: ['array with data']
  },
  {
    year:  2019,
    month: 12,
    day: 26,
    data: ['array with data']
  },
  {
    year:  2020,
    month: 10,
    day: 29,
    data: ['array with data']
  },
  {
    year:  2020,
    month: 10,
    day: 30,
    data: ['array with data']
  },
  {
    year:  2020,
    month: 11,
    day: 19,
    data: ['array with data']
  },
  {
    year:  2020,
    month: 11,
    day: 20,
    data: ['array with data']
  },
}

Write code that will convert the data structure into a structure like this:

javascript{
  year1: {
    month1: {
      Day 1: [data array],
      Day 2: [data array],
      Day 3: [data array],
    }
    month2: {
      Day 1: [data array],
      Day 2: [data array],
      Day 3: [data array],
    }
  }
  year2: {
    month1: {
      Day 1: [data array],
      Day 2: [data array],
      Day 3: [data array],
    }
    month2: {
      Day 1: [data array],
      Day 2: [data array],
      Day 3: [data array],
    }
  }
}