Javascript 如何访问解析对象属性?
我正在分析后台作业中运行以下操作:Javascript 如何访问解析对象属性?,javascript,object,parse-platform,Javascript,Object,Parse Platform,我正在分析后台作业中运行以下操作: var pushIncrement = Parse.Object.extend("pushIncrement"); var pushIncrementQuery = new Parse.Query(pushIncrement); pushIncrementQuery.equalTo('objectId', 'hKj2Eazz6h'); pushIncrementQuery.find({ success: function(result
var pushIncrement = Parse.Object.extend("pushIncrement");
var pushIncrementQuery = new Parse.Query(pushIncrement);
pushIncrementQuery.equalTo('objectId', 'hKj2Eazz6h');
pushIncrementQuery.find({
success: function(results) {
console.log('Here are the results:' + results);
status.success("Completed successfully.");
},
error: function(error) {
console.log('shit');
status.error('shitty shit');
}
});
结果是一个解析对象。例如,如果我查询所有matchCenterItem对象,结果将以如下格式返回:
<matchCenterItem: 0x7f84e2c1a4b0, objectId: Je1VxP7dPw, localId: (null)> {
categoryId = 9355;
itemCondition = Used;
itemLocation = US;
maxPrice = 350;
minPrice = 250;
parent = "<PFUser: 0x7f84e2c20c10, objectId: kfEHfG4FUD>";
searchTerm = "iphone 5 unlocked";
}
现在,如果我想访问结果的categoryId属性并将其记录在控制台日志中,我该如何做呢?我在success函数中尝试了如下操作,但没有如我预期的那样起作用:
log“这是categoryId:”+results.categoryId 想好了,可以这样做:
var pushIncrement = Parse.Object.extend("pushIncrement");
var pushIncrementQuery = new Parse.Query(pushIncrement);
pushIncrementQuery.equalTo('objectId', 'hKj2Eazz6h');
pushIncrementQuery.find({
success: function(results) {
for (var i = 0; i < results.length; ++i) {
var dayNumber = results[i].get("Number");
}
console.log('dem results be:' + dayNumber);
status.success("Push Notifications completed successfully.");
},
error: function(error) {
console.log('shit');
status.error('shitty shit');
}
});
您知道了,但我还要补充一点,如果您试图访问父对象的objectId,您将写入结果[I].getparent.id,如果您想在结果中访问整个父对象,您将向查询中添加pushIncrementQuery.includeparent,并通过结果[I]进行访问.getparent。getsomePropertyOfParent@dstefanis啊有道理。紧接着,我尝试编辑对象的数值,如下所示:for var I=0;i<结果长度++i{var dayNumber=results[i].getNumber;}//计算它是第1天、第2天还是第3天,然后递增。如果第3天发送低推。如果dayNumber=1{//将其更改为2 console.log'dayNumber is 1';results.set'Number',2';results.save;}但它给我一个错误,说'Result:TypeError:Object[Object Object]没有方法'set'。在上面的代码中发现了两个错误。第一个是不相关的,但是您的if语句应该是if dayNumber==1-您缺少一个等号,这将给您带来不同的问题。第二个问题是,您试图设置results的Number属性,而不是results[i]。希望有帮助