Pull to refresh

Comments 21

А что там с наследованием от Array не так? Не нашел в официальном чейнджлоге.

Стало корректно наследоваться свойство length, Array.isArray для таких объектов возвращает true.

У вас написано «почти», мой вопрос в том, чего именно не хватает.

Не все методы работают как вы можете ожидать. Например, метод map вернет Array, а не ваш класс.

Т.е. в методах массива (и не только массива) пока нет поддержки паттерна @@species, она добавлена в V8 5.1.

Поддержка появилась только в версии 5.1, которая, если не ошибаюсь, вышла пять дней назад, так что этого еще нет в текущем релизе.

5.1 ещё не стабильна. Ветки v8 можно считать стабильными только с выходом Chrome соответствующей версии.
Для 5.1 это Chrome 51.

Будет стабильной — попадёт в master Node.js, и в табличке http://node.green/ в Nightly версии Node.js можно будет увидеть обновление.
Тоже писал статью о релизе, но раз вы уже опубликовали, то тогда, чтоб не дублировать темы, в качестве комментария добавлю:

В октябре этого года ветка v6.x станет новой активной LTS версией и её поддержка продлится до апреля 2018 года, а поддержка текущей LTS ветки Node.js v4 'Argon' продлится до апреля 2017. Поддержка же v5 продлится еще два месяца, чтобы разработчики использующие эту версию смогли перейти на v6. Поддержка v0.10 и v0.12 будет полностью прекращена.
> Деструктивное присваивание
destruction != destructuring, равно как и деструкция != деструктуризации.
> Node.JS, node.js

Node.js

> поддержка текущей LTS ветки Node.js v4 'Argon' продлится до апреля 2017

Активная фаза LTS. Кроме этого, есть ещё Maintenance (в основном исправления безопасности) — до апреля 2018. См. график: https://raw.githubusercontent.com/nodejs/LTS/master/schedule.png

> Поддержка v0.10 и v0.12 будет полностью прекращена.

В начале ноября и конце декабря соответственно.
Перестанут выходить обновления безопасности. Кто ещё не слез — слезайте.

> JS 2016

ECMAScript 2015.

> Конструктор, new Buffer(size);

Не совсем так, он ещё в версии 4.0.0 перестал быть конструктором. Но в остальном верно.

> если это не требуется, используйте Buffer.allocUnsafe

Не просто «если это не требуется», а если вы на 100% уверены что вне зависимости от действий пользователя у вас никуда не утечёт буфер с не инициализированной памятью (в том числе частично).

> Деструктивное присваивание

Кхм?

— Кстати, по поддержке — см http://node.green, там 93% ECMAScript 2015. Раз уж вы вспомнили 2016 — то упомяну и про 50% поддержу его (а именно — Array.prototype.includes). Да, в ECMAScript 2016 всего две фичи по сравнению с 2015 — Array.prototype.includes и оператор возведения в степень (его поддержки пока нет).

Спасибо за дополнение.


Не просто «если это не требуется», а если вы на 100% уверены что вне зависимости от действий пользователя у вас никуда не утечёт буфер с не инициализированной памятью (в том числе частично).

Это скорее касается очистки буфера нежели инициализации. Потому как чувствительные данные должны чиститься, в вашем описании появляется ложная уверенность защищенности.


И, кстати, это один из контрибьюторов Node.js. Если что мучайте его вопросами )

> Потому как чувствительные данные должны чиститься, в вашем описании появляется ложная уверенность защищенности.

Нереально удалить все данные оттуда, если честно. Так что надо именно быть уверенными, что у нас не осталось никакого «мусора» в буфере ни при каких условиях.

См. https://github.com/ChALkeR/notes/blob/master/Buffer-knows-everything.md
ES6 модули уже поддерживаются из коробки?
Мне, кстати, непонятно, почему их нету в https://kangax.github.io/compat-table/es6/.

В самом худшем случае можно, наверное, взять npm install babel-register c пустым .babelrc (не пробовал пока).
У них есть issue на эту тему: https://github.com/kangax/compat-table/issues/316
Модули пока не готовы, в ES 2015 они описаны не полностью.
Ещё один довод, для меня, в сторону перехода на TypeScript, где модули из коробки.
Всё таки при частичной поддержке ES2015 в NodeJS использование Babel было для меня под вопросом, а вот TypeScript и так планировали использовать в связке с Angular 2.
Не понял, я что-то не по делу написал? Если уже использовать транспайлеры в связке с нодой, то чем плох TypeScript?
Дефолтные значение в функциях как то связаны с ES, или это будет фишка Node?
Sign up to leave a comment.

Articles