这里,
res =检索到的结果数组
res = [ Object, Object, Object... Object ]
每个对象如下所示:
Object{
"userId": "ab1ce",
"groupId": "a1de2"
}
现在,结果有一个像这样的对象数组,如何访问这些对象中的userId?
答案 0 :(得分:1)
res.forEach(function(obj){
console.log(obj.userId);
});
答案 1 :(得分:1)
res
是一个对象数组,所以要访问一个对象,你必须使用这样的东西:
res[index];
其中index
是一个下标,用于指出所需的数组项。由于数组是0索引的,index
应该在[0, res.length - 1]
范围内。
然后当您从数组res
访问某个项目时,您将获得一个可以使用以下方式访问的对象:
res[index].key;
// OR
res[index]["key"];
其中key
是该对象的属性名称。因此,要获取数组中第一个对象的userId,请使用:
var mySecondObject = res[1]; // 0 is the first, 1 is the second ...
var theId = mySecondObject.userId; // or theId = mySecondObject["userId"];
或像这样的一行:
var theId = res[1].userId;
注意: res
是一个数组,您可以使用多种不同的方式遍历它(for
循环,forEach
...){ {3}}是如何做到的一个例子。
答案 2 :(得分:0)
对于数组的每个项目,0到n,您可以从数组中获取对象,然后访问它的属性。
例如def HA(df):
df['HA_Close']=(df['Open']+ df['High']+ df['Low']+df['Close'])/4
nt = namedtuple('nt', ['Open','Close'])
previous_row = nt(df.ix[0,'Open'],df.ix[0,'Close'])
i = 0
for row in df.itertuples():
ha_open = (previous_row.Open + previous_row.Close) / 2
df.ix[i,'HA_Open'] = ha_open
previous_row = nt(ha_open, row.Close)
i += 1
df['HA_High']=df[['HA_Open','HA_Close','High']].max(axis=1)
df['HA_Low']=df[['HA_Open','HA_Close','Low']].min(axis=1)
return df
会获得第一个项目的userId。
你应该阅读某种Javascript入门手册以获得基础知识,其中一些列在info page或this one中是一个很好的
答案 3 :(得分:0)
如果您在环回中使用它,则可以使用 where 子句中的 inq 属性,以便从数组内搜索内容 e.g:
modelname.method({ where: { "property": { inq [ res.property ] } } }, (err, res) => {
if(err) { return console.error(err);
} else {
return true;
}
});
inq 运算符会检查指定属性的值是否与 数组 中提供的任何值匹配>。一般语法是:
{where: { property: { inq: [val1, val2, ...]}}}
其中:
属性是要查询的模型中的属性(字段)的名称。
val1,val2等,是数组中的文字值。
inq 运营商的示例 :
Posts.find({where: {id: {inq: [123, 234]}}},
function (err, p){... });
答案特定于环回。