Ответ 1
Внутри, toJSON()
вызывает toISOString()
, если он доступен, поэтому никакой разницы.
15.9.5.44 Date.prototype.toJSON(ключ)
Эта функция предоставляет строковое представление объекта Date для использования JSON.stringify(15.12.3).
Когда метод toJSON вызывается с помощью ключа аргумента, выполняются следующие шаги:
Пусть O является результатом вызова ToObject, давая ему это значение в качестве своего аргумента.
Пусть tv - ToPrimitive (O, номер подсказки).
Если tv является числом и не является конечным, верните null.
Пусть toISO является результатом вызова внутреннего метода O [[Get]] с аргументом "toISOString".
Если IsCallable (toISO) является ложным, введите исключение TypeError.
Возвращает результат вызова внутреннего метода to [[Call]] toISO с O в качестве этого значения и пустого списка аргументов.