javascript - Nodejs 需要带有初始值设定项的类

标签 javascript class node.js

例如我有以下类(class)

var Person = function(name)
{
  this.sayHi = function()
  {
    return "Hello, " + name + "!";
  }
}

exports.Person = Person;

在nodejs中我试过了

var Person = require('modulename').Person('Will');

但这只是给了身份不明。我如何在 nodejs 中需要一个带有初始值设定项的类??

最佳答案

var mod = require('modulename');
var somePerson = new mod.Person('Will');

在您的代码中,您直接调用了构造函数而不使用 new,因此 this 被绑定(bind)到全局上下文而不是新的 Person 对象。因为你没有在你的函数中返回 this,你得到了未定义的错误。

参见 http://jsfiddle.net/ThiefMaster/UCvC2/一个小演示。

关于javascript - Nodejs 需要带有初始值设定项的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5690156/

相关文章:

正则表达式

javascript - 如何将两个数组组合成一个具有键值对的对象?

php - 调用 PHP 类

c++ - 关于 C++ 类的问题(继承、变量作用域和函数)

javascript - 我的 Node.js 简单 Web 服务器无法访问父文件夹

linux - 如何将文件从 Docker 容器同步回其主机?

javascript - 如何高效且非阻塞地填充数组

javascript - 有没有办法在调用/事件时将 Angular2 应用程序加载到其根标签?

javascript - 悬停时高效的 JS 事件监听器

php - Node Crypto createHmac() 输出与具有相同输入的 PHP hash_hmac() 输出不同吗?