Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 访问节点中的构造函数变量。js_Javascript_Node.js - Fatal编程技术网

Javascript 访问节点中的构造函数变量。js

Javascript 访问节点中的构造函数变量。js,javascript,node.js,Javascript,Node.js,我正在学习node.js 我有这样一门课-> const client = require('prom-client'); class PrometheusController { constructor () { let counter = new client.Counter({ name: 'http_total_requests', namespace:"test", help: 'test' }); } get (fn) { thi

我正在学习node.js

我有这样一门课->

 const client = require('prom-client');

class PrometheusController {
    constructor () {
        let counter = new client.Counter({ name: 'http_total_requests', namespace:"test", help: 'test' });
}

    get (fn) {
        this.counter.inc(); // Inc with 1
}
节点js抱怨计数器未定义

我尝试保存
这个
变量,正如这里的帖子所建议的那样,但也无法访问-


如何访问构造函数变量?

您不能。只能从构造函数访问
构造函数中声明的变量

您可能想做的是:

constructor() {
    this.counter = new client.Counter(...);
}

请记住,ES6类只是围绕构造函数的语法糖,因此上面的代码对应于此ES5代码:

function PrometheusController() {
    this.counter = new client.Counter(...);
}
可以像这样使用:

let controller = new PrometheusController();
// controller.counter can be used here