什么是和谐,什么是和谐输出?

What is harmony and what are harmony exports?

这个和声出口是什么?其实什么是和谐?

背景

当我使用 Webpack 打包东西并查看分发源时,它总是包含这一块。

// define getter function for harmony exports
__webpack_require__.d = function(exports, name, getter) {
    if(!__webpack_require__.o(exports, name)) {
        Object.defineProperty(exports, name, { enumerable: true, get: getter });
    }
};

我用 Google 搜索并找到了 this page,但我对此一无所知。截至今天,此页面如下所示:

我在谷歌上搜索了更多 found a similar question 询问什么是和谐,但提问者从来没有用这么多词问过它,唯一的答案也没有告诉你它是什么。

问题

那么,在上帝自己的绿色地球上,和谐是什么?然后什么是和声输出?

阅读 'ecmascript-harmony' 的 Stack Overflow 标签描述,我怀疑它指的是 ES6 模块导出,但我也认为不是那样,因为紧接着,Webpack 源分发文件有一个 if 构造检查它正在处​​理的 entry 文件是否使用 export 语句公开 ES 6 模块。

// define __esModule on exports
__webpack_require__.r = function(exports) {
    if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
        Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
    }
    Object.defineProperty(exports, '__esModule', { value: true });
};

所以,它可能意味着 ES 6 模块导出以外的东西?我怀疑这是在 Node 中实现的 Common JS 样式导出?

So, what on God's own green earth is harmony?

After ES4 was abandoned, plans were scaled back in a new project which had the code name Harmony.

这最终演变成 ES6。

And then what are harmony exports?

ES6 描述的最终(?)版本的导出系统。