Можно ли как-нибудь использовать эту функцию в моей подсказке и генерировать вторую дату в подсказке headerFormat [?]
Из спецификации:
headerFormat: string
HTML-код строки заголовка всплывающей подсказки. Переменные заключены в фигурные скобки. [...]
Как видите, tooltip.headerFormat
принимает только строки, которые являются статичными по своей природе. Переменные типа {point.key}
будут обрабатываться механизмом поиска и замены. Таким образом, вы не можете использовать функцию для tooltip.headerFormat
(что жаль!).
Если вы хотите использовать средство форматирования, которое может обрабатывать значения динамически, то есть с помощью функции обратного вызова вы должны использовать tooltip.formatter:
форматер: Highcharts.TooltipFormatterCallbackFunction
Функция обратного вызова для форматирования текста всплывающей подсказки с нуля. [...]
Как вы можете видеть, когда вы пытаетесь tooltip.formatter
в первый раз, кажется, что вам нужно переписать базу кода всплывающей подсказки. Но это, вероятно, потому что вы не проверили свои предварительные условия достаточно, прежде чем начать писать. Также делать это в этом ответе было бы определенно слишком много ...
Доля "+5 лет":
var oDate = new Date( point.key );
return (5 + oDate.getFullYear()) + '/' + // add 5 years
(1 + oDate.getMonth()) + '/' + // (January gives 0)
oDate.getDate();
Примечание. Вышесказанное верно только для обычных лет, но не каждый год имеет 365 дней
Если вы хотите также внедрить високосные годы в свои вычисления, я рекомендую такую структуру, как momentjs.com .