比如传入"isIP" 执行下面的代码
Validator.check(data).isIP();
除了eval有别的办法 吗?
Validator.check(data).isIP();
除了eval有别的办法 吗?

1 rrfeng May 29, 2013 这不就是参数解析么?加个 if/case 就解决了嘛…… |
2 yakczh OP 这是验证函数,有50多个,还有的是动态注册的 |
3 alsotang May 29, 2013 __getattr__ 这个东西应该是你要的。 |
4 codepiano May 29, 2013 obj = { a:function(){ alert('a'); }, b:function(){ alert('b'); }, c:function(){ alert('c'); } } function test(name){ obj[name](); } test('c'); test('a'); test('b'); 你是想要这个效果吗? |
5 yakczh OP 如果带参数呢 test('isIP') 调用 Validator.check(data).isIP(); test('isRange',[100,200]),调用 Validator.check(data).isRange(100,200); 参数怎么传? |