Как получить самую давнюю дату, хранящуюся в массиве?
arr.map(n => n.date).sort()[0]

// или

arr.map(n => n.date).reduce((min, n) => min < n ? min : n)

// или

new Date(Math.min(...arr.map(n => new Date(n.date)))).toISOString()
new Date( // чтобы конечный результат был в виде человеко читаемой строки
 Math.min.apply(  // применим функцию поиска минимального элемента в массиве с помощью apply
   null, // контекст не нужен
   arr.map(i => new Date(i.date)) // в качестве массива, среди которого ищем минимум - массив дат, преобразованных в Date
  )
).toISOString() // собственно, преобразовываем в человеко понятную строку.

Ну или нагляднее:
const dates = arr.map(i => new Date(i.date))
const minDate = Math.min.apply(null, dates)
const minDateString = new Date(minDate).toISOString()