我有一个字符串:
settings.functionName + '(' + t.parentNode.id + ')';
Run Code Online (Sandbox Code Playgroud)
我想要转换成函数调用,如下所示:
clickedOnItem(IdofParent);
Run Code Online (Sandbox Code Playgroud)
这当然必须在JavaScript中完成.当我发出警报时settings.functionName + '(' + t.parentNode.id + ')';,似乎可以使一切正常.我只需要调用它将转换成的函数.
传说:
settings.functionName = clickedOnItem
t.parentNode.id = IdofParent
Run Code Online (Sandbox Code Playgroud) 我有一个JavaScript变量,其中包含JavaScript函数的名称.通过使用$ .ajax等加载和放置页面上存在此函数.
谁能告诉我如何调用变量中命名的javascript函数,好吗?
函数的名称位于变量中,因为用于加载页面片段的URL(插入到当前页面中)包含要调用的函数的名称.
我对如何实施此解决方案的其他建议持开放态度.
我正在努力动态创建一些Javascript,它将在构建时插入到网页中.
Javascript将用于根据另一个列表框中的选择填充列表框.当选择一个列表框时,它将根据列表框的选定值调用方法名称.
例如:
Listbox1包含:
颜色
形状
如果选择"颜色",则会调用填充另一个列表框的"populate_Colours"方法.
澄清我的问题:如何在Javascript中进行"populate_Colours"调用?
这两个功能在幕后做同样的事情吗?(在单一陈述函数中)
var evaluate = function(string) {
return eval('(' + string + ')');
}
var func = function(string) {
return (new Function( 'return (' + string + ')' )());
}
console.log(evaluate('2 + 1'));
console.log(func('2 + 1'));
Run Code Online (Sandbox Code Playgroud) 我想使用变量的值来访问对象.
假设我有一个名为myobject的对象.
我想用这个名称填充变量并使用该变量来访问该对象.
例:
var objname = 'myobject';
{objname}.value = 'value';
Run Code Online (Sandbox Code Playgroud) 是否可以通过使用字符串调用函数?
(即)我有一个变量var target = 'next';.使用此字符串我想调用jquery方法next().我应该使用target + '()'(这有点愚蠢)来打电话next()吗?
我知道可以使用conditional语句来完成.因为它是一个从用户那里得到的字符串,但很难为所有这些使用条件语句.
在我的jQuery插件,用户将通过价值prev,siblings等等作为选项,使得相应的jQuery方法将被执行.
我该如何实现?
在Python可以得到所有本地和全局变量的字典与内置函数当前范围locals()和globals().在Javascript中有一些相同的方法吗?例如,我想做类似以下的事情:
var foo = function(){ alert('foo'); };
var bar = function(){ alert('bar'); };
var s = 'foo';
locals()[s](); // alerts 'foo'
Run Code Online (Sandbox Code Playgroud)
这是可能的,还是我应该只使用本地对象进行查找?
接下来的问题是:假设我们有一个选择.Onchange事件我们需要调用一些函数,但是这个函数的名字保存在变量中.如何调用此功能?
我已经看到这种技术用于根据字符串变量的值调用Javascript函数.
function foo() {
alert('foo');
}
var test = 'foo';
window[test](); //This calls foo()
Run Code Online (Sandbox Code Playgroud)
这是接受的方式吗?还是有更好的方法?是否需要担心任何跨浏览器问题?
我有以下脚本:
(function () {
var Module = (function () {
var fctToCall = function () {
alert('Foo');
};
return {
fctToCall: fctToCall
};
})();
var Module2 = (function () {
var init = function () {
var str = 'fctToCall';
Module.str(); // here
};
return {
init: init
};
})();
})();
Run Code Online (Sandbox Code Playgroud)
所以我想fctToCall通过它的名字来调用这个方法 - 我该怎么做?到目前为止,我知道3种方法:
我怎么解决这个问题?