gpt4 book ai didi

javascript - ES-2015 模块可以 self 感知吗?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:29 25 4
gpt4 key购买 nike

在 javascript ES-2015 模块中,模块成员可以知道还有哪些其他模块成员吗?

例如,在 CommonJS 模块中,这是可能的:

function square(x) {
return x * x;
}
function whoAmI() {
return Object.keys(module.exports); // ['square','whoAmI']
}
module.exports = {
square: square,
whoAmI: whoAmI
};

在等效的 ES-2015 模块中,我们如何编写 whoAmI() 函数?

export function square(x) {
return x * x;
}
export function whoAmI() {
// ?????
}

最佳答案

您可以从自己导入 *,然后导出结果的 Object.keys:

// myModule.js
import * as exports from './myModule';

export function square(x) { return x * x; }
export let whoAmI = Object.keys(exports);

// consumer.js
import {whoAmI} from `./myModule';
console.log(whoAmI);

> ['square']

这将不包括 whoAmI,因此要包括它:

export let whoAmI = Object.keys(exports).concat('whoAmI');

关于javascript - ES-2015 模块可以 self 感知吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40648206/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com