的FindRecord:
函数()
方法是在FindRecord方法称为
复制代码代码如下所示:
FindRecord:函数(){
我=这个,
指数=(我的观点)me.find.apply;
收益指数!= = 1 me.getat(指数):空;
},
进入find方法
复制代码代码如下所示:
发现:
功能(财产,价值开始,anymatch,区分大小写,ExactMatch){
var fn = this.createfilterfn(财产、价值、anymatch,区分大小写,精确匹配);
返回FN this.data.findindexby(FN,null,
启动):1;
},
CreateFilterFn的方法
CreateFilterFn:功能(
属性,值,anymatch,区分大小写,ExactMatch){
如果(Ext.isEmpty(值)){
返回false;
}
价值= this.data.createvaluematcher(价值,anymatch,区分大小写,精确匹配);
返回函数(r){
返回value.test(r.data {财产});
};
},
FindIndexBy:功能(FN、范围、启动){
我=这个,
me.keys键=,
项目= me.items,
我开始| | = 0,
len = items.length;
为了(;;我;我;+){
如果(fn.call(范围| |我项目{我},{我}键)){
我回来;
}
}
返回- 1;
},
请注意,
value.test(r.data {财产});
错误的地方是这里
我在这里使用属性作为id字段。
下面是
查询id = 1的记录记录,
这是通过这个周期完成的。
复制代码代码如下所示:
为了(;;我;我;+){
如果(fn.call(范围| |我项目{我},{我}键)){
还我;
}
},
也就是说,每次被调用
value.test(r.data {财产})
判断是由正则表达式完成的。
你可以测试这种
情况。
复制代码代码如下所示:
VaR值= new RegExp(1);
var b = value.test(15 ') / /这是成功返回。
我想每个人都知道为什么。
当你判断id=1时,当你在1开始时遇到ID时,现在是判断问题的时候了。