2013-06-26 5 views
12

Node.JS v0.11.3 утверждает, что имеет поддержку модулей ECMAScript 6 с флагом .Модули ECMAScript 6 в Node.JS

Я пробовал различные примеры, например следующее.

module math { 
    export var pi = 3.141593; 
} 

Каков синтаксис для получения модулей, работающих в Node.JS?

+2

Ваша ссылка не работает. –

+0

@CrazyTrain: он работает только второй раз: -/ – Bergi

+1

[Похоже, Chrome еще не поддерживает модули] (http://kangax.github.io/es5-compat-table/es6/#Modules). Исходя из этого, можем ли мы сказать, что V8 вообще не поддерживает его? – gustavohenke

ответ

14

Реализация модулей в V8 является неполным. При использовании с --harmony-modules поддерживается поддержка парсинга, но поддержка фактической функциональности была приостановлена. Причина этого в том, что спецификация того, как модули ES6 действительно будут работать, работает и все еще не полностью прибита.

Реализация в Continuum (связанный скриншот из ответа Crazy Train) восходит к промежуточной спецификации с ноября 2012 года и теперь сильно устарела из-за текущих изменений в спецификации модуля ES6. Вот почему разработчики V8 по-прежнему поддерживают поддержку модулей.

Похоже, что спецификация модулей приближается к стабильности (хотя я ожидаю, что мы немного понемногу увидимся), и я думаю (надеюсь, по крайней мере), что мы увидим, что SpiderMonkey и V8 продвигаются вперед с реализациями в течение следующего 6 месяцев.

Полезные ссылки:
3

Вы можете использовать Continuum, который представляет собой виртуальную машину ES6, написанную в (текущем) JavaScript.

enter image description here

+0

@Randomblue: Пример кода чего? –

+0

@ Randomblue: пример в вашем вопросе. Мне кажется, что вы ищете тестовую среду. –

+1

Я действительно ищу пример, специально работающий на V8. – Randomblue