이 객체를 갖는동적 함수에 대한 배열 : eval을 사용하거나 사용하지 않습니까?
// Better as array, thank you for the advice @user2864740
var rule = [
['User', null],
['filter', [{ idgroup: 95, active: true}],
['order_by', ['name', 'created']]
];
내가 위의 개체를 기반으로하는 함수를 만들려고합니다. 나는 그것을 할 수있는 두 가지 방법만을 알고 있습니다. 첫 번째 eval
를 사용하여 만드는 기능을 리터럴 :
eval("User.filter({ idgroup: 95, active: true }).order_by('name', 'created')");
다른 방법이 더 복잡하고 나는 아직 그것을 접근하는 방법을 모르겠어요.
this['User']['filter'].apply(this['User'], [{ idgroup: 95, active: true }])['order_by'].apply(this['User'], ['name', 'created']);
이 가치가 두 번째 옵션으로 함수를 호출 할 수있는 동적 함수를 작성, 아니면 충분히 빨리이 문제를 해결하기 위해 평가입니다 :하지만 결과는 (분명히 for/while
와) 같은 것을해야 하는가?
객체 키는 항상'User','filter' 및'order_by'입니까? – Bergi
@ user2864740 'null'은 함수로 호출되지 않습니다. – EnZo
@Bergi는 완전히 동적 인 아이디어입니다. – EnZo