ES-2015模块能自我感知吗?
Can an ES-2015 module be self-aware?
在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循环不会自我更新
- 为什么自我执行匿名有效
- 是否可以在没有外部输入的情况下使函数具有自我意识
- 如何创建对表单的自我更新响应
- JetBrains网络风暴智能感知
- 如何对危险感知考试进行编码
- 谷歌广告感知显示广告,即使我告诉它不要
- JavaScript 自包含函数数组访问自我索引
- 这是来自我的代码还是角度库的 $parse:语法错误
- 让NodeJS应用程序使用NPM进行自我更新
- 在AngularJs的SPA中,我如何删除“;.html”;来自我的URL
- 如果自我 === 顶部或 google.com
- 反应:自我更新的最佳方式,但防止孩子更新
- 应该赞成“_这个“;而不是“;自我;在javascript中
- OO JavaScript - 避免自我 = 这个
- 方向感知三维立方体动画
- 在对象文字的声明中继承上下文(this)?“自我”还好吗
- 使用jquery感知文本字符串中的时间范围
- RUM(真实用户监控)用户感知的负载时间和位置
- ES-2015模块能自我感知吗?