I think only in two methods for solved your problem
METHOD 1
Module1.js
class HelloWorld { getHelloWorld() { return 'Hello World'; }}module.exports = HelloWorld
Module2.js
const HelloWorld = require('./module1.js');const helloWorld = new HelloWorld();
METHOD 2Node <= v12 (Extension file: .msj
and run it like node --experimental-modules module2.mjs
)
module1.mjs
export default class HelloWorld { getHelloWorld() { return 'Hello World'; }}
module2.msj
import HelloWorld from './module1.mjs';const helloWorld = new HelloWorld();console.log(helloWorld.getHelloWorld());
METHOD 2Node >= v13 (Extension files: .msj
or Add { "type": "module" }
in the package.json
)
module1.mjs or module1.js if you add { "type": "module" }
in the package.json
export default class HelloWorld { getHelloWorld() { return 'Hello World'; }}
module2.mjs or module2.js if you add { "type": "module" }
in the package.json
import HelloWorld from './module1.mjs';const helloWorld = new HelloWorld();console.log(helloWorld.getHelloWorld());
NOTE: If you are interested in knowing the difference between "module.exports vs export default", this topic can help you module.exports vs. export default in Node.js and ES6