javascript - index.js 中定义的变量会转移到其他脚本吗?
问题描述
我有 index.js 运行以下代码:
var ClassData=require("./server/classdata.js");
var data=require("./server/data.js");
classdata.js 文件包含多个类,我想知道是否有任何方法可以将其放入 data.js。截至目前,以下代码为:
var data={};
console.log("hello1"); //this gets logged
module.export=data;
console.log("hello2"); //this gets logged
console.log(ClassData); //"ClassData is not defined"
当最后一行不存在时,数据对象被导出,否则它表示 ClassData 未定义。我知道我可能可以使用与 index.js 中相同的方式来定义它,使用require();
,但我认为这使它再次运行整个脚本。有没有办法直接从 data.js 中得到它,这样它就被定义了?我需要把它放在 data.require 部分吗?我不在乎我是否不能更改 ClassData。
解决方案
classdata.js 文件包含多个类,我想知道是否有任何方法可以将其放入 data.js
您可以require('./classdata.js')
在 data.js 内部使用,这就是require
目的,在另一个内部重用模块。
我知道我可能可以使用与 index.js 中相同的方式使用 require(); 来定义它,但我认为这会使它再次运行整个脚本。
使用导入的模块在首次使用后require
会被缓存,因此脚本不会再次运行。
推荐阅读
- rust - 如何使用 Rust 的 FFI 从 C 中获取输出字符串参数?
- java - 尝试创建一个哈希表以从文本文件中获取一个数组列表 - Java
- java - 下面的代码用于删除排序链表中的重复项
- jquery - 如何从mongodb加载用户相关数据
- angular - 如何设置 mat-table 列宽的宽度
- r - 为什么将图例添加到绘图时会出现错误?
- reactjs - 如何修复无法读取未定义的属性“价格/键”?
- sql - 如何从日期列为 varchar 数据类型的日期获取月份。仅供参考使用雪花工具
- multibyte-characters - IronPdf 中的多字节字符读取问题
- node.js - 无法使用 docker 从 nodejs 连接到 postgres