Javascript:将对象插入集合

标签 javascript

我有一个 Msg 对象和一个 MsgCollection 对象。

消息对象:

function Msg(text, timestamp, source, thread_id) {
    Msg.RECEIVED = 1;
    Msg.SENT = 2;

    this.thread_id = thread_id;
    this.text = text;
    this.timestamp = timestamp;
    this.source = source;
}

MsgCollection 对象:

function MsgCollection() {
    this.all = [];
}
MsgCollection.prototype.push = function(msg) {
    this.all.push(msg);
    console.log("first message text: " + this.all[0].text);
}

在下面的代码中,我获取结果对象并将所有数据放入一个临时的 Msg 对象中,然后再将其推送到 MsgCollection:

var msgColl = new MsgCollection();
for (var i = 0; i < result.texts.length; i++) {
    var tempMsg = new Msg;
    tempMsg.thread_id = result.texts[i].thread_id;
    tempMsg.text = result.texts[i].message;
    tempMsg.timestamp =  Number(result.texts[i].time_received);
    tempMsg.source = result.texts[i].type;

    msgColl.push(tempMsg);
}

不幸的是,当我尝试在 push 方法中打印出 this.all[0].text 时,似乎执行停止了。换句话说,似乎没有任何东西被插入 msgCollection 对象。也许这有点复杂,但也许我可以获得一些关于如何调试的指导?

谢谢

最佳答案

var tempMsg = new Msg(); 

tempMsg.timestamp = new Number(result.texts[i].time_received);  

效果很好
DEMO

关于Javascript:将对象插入集合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17228297/

相关文章:

javascript - 使用 React 和 Web Audio 进行状态管理

javascript - 单击滚动顶部按钮时如何摆脱页面上的这种白色效果

javascript - 为数据表中的第 0 行请求了未知参数 '4'

javascript - 将值传递给函数参数 javascript 时遇到问题

javascript - 如何验证 JavaScript?

javascript - 如何在nggrid中创建多行单元格

javascript - 在移动设备中聚焦于文本区域时无法聚焦于按钮

javascript - 排序对象属性和 JSON.stringify

javascript - 具有多个标记和方向的 infoWindows 问题Google Maps API v3 中的显示变量

javascript - Reactjs 的 If-Else 状态