使用javascript eval函数传递参数时出现问题。。。我做错了什么?
像往常一样,我在测试了几个小时后来到这里,不知道我做错了什么;-)我不是javascript专家,所以我想这会引起一些不安;-)很抱歉。我现在正试图以一种更可读的方式编写代码。在类中分离函数等。。。我想要实现的是这样的目标:使用javascript eval函数传递参数时出现问题。。。我做错了什么?,javascript,eval,Javascript,Eval,像往常一样,我在测试了几个小时后来到这里,不知道我做错了什么;-)我不是javascript专家,所以我想这会引起一些不安;-)很抱歉。我现在正试图以一种更可读的方式编写代码。在类中分离函数等。。。我想要实现的是这样的目标: 模块。创建('streamModule','leftColumn') 哪个将调用 streamModule.create() 现在我不去上班的事情是: 调用modules.create('streamModule','leftColumn')总是导致 引用错误:未定义l
模块。创建('streamModule','leftColumn')
哪个将调用
streamModule.create()
现在我不去上班的事情是:
调用modules.create('streamModule','leftColumn')总是导致
引用错误:未定义leftColumn???
调用中的id:eval(type+”.create(“+id+”,“+target”)”);始终正确传递,但目标参数不是???我做错了什么 任何帮助都将不胜感激!!!!!谢谢大家!
var modules = {
_map : [],
create: function(type,target) {
if(type == undefined) return false;
if(target == undefined) return false;
//Store id in map
this._map.push(id = createID());
//Call create function of module
eval(type +".create("+id+","+target")");
}
}
[……]
[……]
modules.create('streamModule','leftColumn')
为什么您需要
eval
var modules = {
_map : [],
create: function(type,target) {
if(type == undefined) return false;
if(target == undefined) return false;
//Store id in map
this._map.push(id = createID());
//Call create function of module
type.create(id, target);
}
[……]
[……]
+我自己也在打类似的东西。使用eval()的第一条规则是应该避免使用它。因为我得到:type.create()不是函数?已经试过了:-(对不起..我是个很迟钝的人..用一个字符串来称呼它…使用modules.create(streamModule,'leftColumn');有效…抱歉
var modules = {
_map : [],
create: function(type,target) {
if(type == undefined) return false;
if(target == undefined) return false;
//Store id in map
this._map.push(id = createID());
//Call create function of module
type.create(id, target);
}
var streamModule = {
create: function(id, target) {
$.log(target)
}
}
modules.create(streamModule, leftColumn);