如何访问node.js中对象的成员

How to access members of a object in node.js

本文关键字:js 对象 成员 node 何访问 访问      更新时间:2023-09-26

我对node.js很陌生,对对象有点问题。假设我有两个文件,一个叫printer.js,另一个叫database.js。printer.js打印数据库返回的结果。printer.js看起来像这样:

var db = require("./database")
db.getStations(dbReturn);
function dbReturn(stations) {
    for(var i = 0; i < stations.length; i++) {
        console.log('id: ' + stations.id);
    }
}

我的database.js看起来是这样的:

function getStations(callback){
    var listOfStations = [];
    for(var index = 0; index < 10; index++) {
        var station = new Station(index);
        listOfStations[index] = station;
    }
    callback(listOfStations);
}
function Station(id){
    this.id = id;
}
exports.getStations = getStations;

我只想提一下,车站班的成员比这多得多。但这里的问题是,我无法从printer.js在database.js中创建的Station对象访问成员。我很难弄清楚如何做到这一点。我已经学会了如何通过导出Station在printer.js中创建Station的新对象,但我仍然无法访问我在其他地方创建的对象的成员!它只吐出10 x"id:undefined"

有人建议我做类似的事情:

database.prototype.getStations = function(callback) {
    //...
}
database.prototype.Station = function(id) {
    //...
}
module.exports = database;

但这似乎不起作用,因为它只是告诉我数据库是未定义的。我在这里做错了什么?

您在for循环中没有通过索引访问stations

printer.js:中更改此项

console.log('id: ' + stations.id);

至:

console.log('id: ' + stations[i].id);