我正在为postgres db返回的每个对象添加一个属性。当我在console.log()整个对象时出现新属性,但每当我尝试访问它或将其存储到另一个变量时它就会出现未定义。
这是我将属性添加到对象的代码:
for(var i = 0; i < teams.rows.length; i++) {
teams.rows[i].year = year
}
async.map(teams.rows, leagueResults, function(err, results) {
console.log(results)
cb(err, results)
})
然后我尝试访问leagueResults中的year属性:
console.log(team)
team = "\'"+team.team_id+"\'"
var year = team.year
console.log('team', team, team.year)
控制台日志记录team.year总是出现&#34; undefined&#34;有谁知道为什么以及如何解决这个问题?我正在使用pg npm模块来连接/查询我的postgres服务器。
答案 0 :(得分:1)
您使用字符串覆盖team
的值,新字符串不会与旧的team
对象具有相同的属性。
解决方案是在 var year = team.year
之前移动team = "\'"+team.team_id+"\'"
并使用year
值代替team.year
。