Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 动态调用jQuery函数_Javascript_Jquery - Fatal编程技术网

Javascript 动态调用jQuery函数

Javascript 动态调用jQuery函数,javascript,jquery,Javascript,Jquery,我想这样做: var todo = "text"; $this.eval(todo).split(/\b[\s,\.-:;]*/).length; 所以这就是结果函数: $this.text().split(/\b[\s,\.-:;]*/).length; 我搞不懂……我该怎么做呢?如果你必须让它完全动态,那么你可以简单地把它全部放在一个字符串中,然后对它求值()。大概是这样的: var todo = 'text'; $this[todo]().split(/\b[\s,\.-:;]*/)

我想这样做:

var todo = "text";

$this.eval(todo).split(/\b[\s,\.-:;]*/).length;
所以这就是结果函数:

$this.text().split(/\b[\s,\.-:;]*/).length;

我搞不懂……我该怎么做呢?

如果你必须让它完全动态,那么你可以简单地把它全部放在一个字符串中,然后对它求值()。大概是这样的:

var todo = 'text';
$this[todo]().split(/\b[\s,\.-:;]*/).length;
var obj_name = "text";
var eval_code = "$this."+ obj_name + "(todo).split(/\\b[\\s,\\.-:;]*/).length;";
var result = eval(eval_code);
另外,不要将变量命名为eval,以避免与eval函数冲突


希望有帮助

可能重复的,为什么需要这样动态调用它?
eval
在这里是不必要的。我完全同意。然而,最初的海报要求使用变量作为代码行的一部分。这就是为什么我说“如果你必须让它充满活力”。这不是正确的甚至不是好的解决方案,但它回答了他在代码块中嵌入变量的问题。但是,是的,应该澄清的是,这甚至不是一个有效的解决方案。