gpt4 book ai didi

javascript - 如何使用 Node require 在另一个 Javascript 文件中定义类的函数?

转载 作者:行者123 更新时间:2023-12-03 00:03:00 24 4
gpt4 key购买 nike

假设我在自己的 JavaScript 文件中定义了一个类 A,如下所示:

A.js

class A {
constructor() {
// blah blah blah
}
func() {
// a long function
}
}

如果我有一个函数(例如 func()),我想将其包含在自己的文件中(出于组织目的),我将如何实现这一点?

我想要的是这样的:

A.js

class A {
constructor() {
this.func = {};
}
} exports.A = A;

ADefinition.js

var A = require('./A.js');
A.func = () => {
// a long function
}

这显然行不通,但是如何实现这一点呢?

最佳答案

类大多只是语法糖。在 ES5 中,您可以通过给原型(prototype)赋值来定义原型(prototype)函数:

function A() {
}
A.prototype.func = function() {
}

类可以以同样的方式工作:

var A = require('./A.js');
A.prototype.func = () => {
// a long function
}

不过,请注意,如果您使用箭头函数,您将无法访问该实例 - 您很可能需要一个成熟的函数:

A.prototype.func = function() {
// a long function
};

另外,就我个人而言,我认为为了代码清晰,我更愿意将 func 放在类定义旁边的类上,而不是运行一个执行侧面的模块效果(就像您当前的代码试图做的那样),例如:

const func = require('./func.js');
class A {
constructor() {
}
}
A.prototype.func = func;

关于javascript - 如何使用 Node require 在另一个 Javascript 文件中定义类的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55091512/

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