在 Lucee 4.5.1.003 我有这个函数,其中 LineArray 是 LineItem 对象的数组。
public function getLineItemDetailsById(required numeric id){
this.LineArray.each(function(i){
if(i.Id == id){
return i;
}
});
}
即使存在匹配,该函数也会返回 null。如果我添加一个 var 来保存找到的对象,则返回该 var。
public function getLineItemDetailsById(required numeric id){
var found = '';
this.LineArray.each(function(i){
if(i.Id == id){
found = i;
//return i;
}
});
return found;
}
我在期望 array.each 返回 i 时做错了什么,还是我误解了 array.each 的工作原理?
编辑:要清楚,第二个函数确实返回找到的对象。