我的Exec方法
function Exec(funcName, arr, byResult) {
if (byResult) {
if (typeof funcName == "string") {
if (window[funcName]) {
//如果返回false或者没用返回值,则继续执行一次,知道返回true
if (!window[funcName](arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
}
else {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
} else {
if (!funcName(arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
}
} else {
if (typeof funcName == "string") {
//如果此函数已经被加载
if (window[funcName]) {
window[funcName](arr);
} //如果函数没有被加载,则每隔0.1秒检查一次,直到加载完成
else {
window.setTimeout(function() { Exec(funcName, arr) }, _interval);
}
} else {
funcName(arr);
}
}
}
function Exec2(funcName, arr, byResult) {
if (typeof funcName == "string") {
if (window[funcName]) {
if (byResult) {
if (!window[funcName](arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
} else {
window[funcName](arr);
}
}
else {
window.setTimeout(function() { Exec(funcName, arr, byResult) }, _interval);
}
} else {
if (byResult) {
if (!funcName(arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
} else {
funcName(arr);
}
}
}
if (byResult) {
if (typeof funcName == "string") {
if (window[funcName]) {
//如果返回false或者没用返回值,则继续执行一次,知道返回true
if (!window[funcName](arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
}
else {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
} else {
if (!funcName(arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
}
} else {
if (typeof funcName == "string") {
//如果此函数已经被加载
if (window[funcName]) {
window[funcName](arr);
} //如果函数没有被加载,则每隔0.1秒检查一次,直到加载完成
else {
window.setTimeout(function() { Exec(funcName, arr) }, _interval);
}
} else {
funcName(arr);
}
}
}
function Exec2(funcName, arr, byResult) {
if (typeof funcName == "string") {
if (window[funcName]) {
if (byResult) {
if (!window[funcName](arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
} else {
window[funcName](arr);
}
}
else {
window.setTimeout(function() { Exec(funcName, arr, byResult) }, _interval);
}
} else {
if (byResult) {
if (!funcName(arr)) {
window.setTimeout(function() { Exec(funcName, arr, true) }, _interval);
}
} else {
funcName(arr);
}
}
}