function funcA() {
var fB;
function init() {
fB = new funcB(false); //error here
}
init();
}
function funcB(usefuncA) {
var fA;
function init() {
if (usefuncA) fA = new funcA();
}
init();
}
$(function() {
var test = new funcB(true);
});
我知道如何解决C++中的这个问题,但不知道有什么技巧要在JavaScript中修复它。有一种方法,对吧?我绝对必须在另一个函数中拥有每一个函数,而我能想到的唯一另一种方法是将funcB的内容放入它自己的.js文件中,然后使用PHP创建两个版本的funcB,一个用于funcA,一个用于当前funcB的地方。但是这很荒唐......不能获得两个函数来初始化对方
你想用这个做什么?我绝对相信有更好的方法。 – 2012-02-28 15:25:22
不是这是一个无限循环? – 2012-02-28 15:26:48
它们都包装一个jQuery接口。 funcB是一种具有多种选项的搜索功能,其中之一是funcA。然而,funcA也需要能够使用稍微有限的funcB来搜索数据来获取自己的功能。 funcA将初始化的funcB不会允许无限循环,顺便说一下,它的一个小小的限制就是它不会使用funcA,但是它有很多其他的东西。我真的很希望它与我在OP中概述的相似,而不是真正寻找能够改变一切的解决方案。 – user173342 2012-02-28 15:26:58