Я делаю всевозможные JS-эксперименты, чтобы прояснить различные языковые точки, многие из которых запускаются в Eclipse с использованием приложения Run As -> Node (или Node-программы).
Я удивлен, обнаружив, чтоArray.prototype.flat()
недоступно, хотя оно есть в моем браузере (Firefox 70), и мне интересно, какая версия JS запущена у меня в Eclipse NodeJS.
CLI-версия моей системы NodeJS - v10.16.3. Это также не распознает Array.flat()
. Я не смог выяснить версию ECMAScript, которой это соответствует (если это так). Версия "NodeEclipse", установленная в Eclipse, называется 1.0.2. Я не знаю, как читать оттуда к версии NodeJS ...
Есть ответ "pure-JS" здесь о получении версии JS, но вы должны получить доступdocument
, чего я не могу, когда не работаю в браузере. Разве нет простого способа выяснить это?
Я запутался: запускает ли Eclipse конкретную версию Node и соответствует ли конкретная версия Node конкретной версии (версия ECMAScript) JS?
Если бы я мог как-то получить версию Node и версию ES при запуске скрипта, это бы очень помогло! Может быть, есть какой-то тест на защиту от дурака?
PS
Чтобы добавить к моему общему недоумению: Array.flat()
не указан на общей странице для Array.prototype ,но он указан как метод Array.prototype на другой странице . Ни одна из этих страниц не говорит, какой версии ECMAScript они соответствуют. Возможно, я должен предположить, что это последняя версия для FF, поскольку это Mozilla (т.е. ES7)?