在我的骨干系列中,这是我拥有的模型数据:
var student = [
{name:"student0",scored:75},
{name:"student1",scored:49},
{name:"student2",scored:25}
]
从模型数据(集合),我试图让'得分'属性超过60 ... 要做到这一点,我使用这种方法,
点击我正在调用名为'showHighScore'的方法,
getHighSocre:function(){
return _.each(this.collection.models, function(item){
return parseInt(item.get('scored')) > 60
})
},
showHighScore:function(){
var highscore = this.getHighSocre();
console.log(highscore);//i am getting the result as undifined
}
当'showHighScore'调用时,我正在循环并返回值,但是控制台给我的结果为'undefined'..这样的方法是错误的..或者获取模型集合的正确方法是什么其中“scored”属性超过60 ...
任何人都帮助我..提前感谢。
答案 0 :(得分:1)
尝试这样的事情:
var student = [
{name:"student0",scored:75},
{name:"student1",scored:49},
{name:"student2",scored:25}
];
var test = _.filter(student, function(item){ return item.scored > 60 });
console.log(test);
要获得json,您应该使用
var students = this.collection.toJSON();
然后从方法返回一个新集合,或刷新当前集合。