Javascript 重构代码-处理代码的一般方法
我有一个代码,它有一个执行每个循环的Javascript 重构代码-处理代码的一般方法,javascript,algorithm,language-agnostic,refactoring,Javascript,Algorithm,Language Agnostic,Refactoring,我有一个代码,它有一个执行每个循环的start()函数。我在其中到处调用pause()函数 我现在必须更聪明地调用pause(),这取决于某些条件。在某些地方,它是在其他地方不需要的条件下执行的 我知道我现在必须创建一个单独的函数来调用pause()函数。但这是我所能做到的。感觉像个迷宫,我迷路了 编写此代码的最佳方法是什么?职业选手是怎么做到的 更新: 我已经添加了我的代码。基本上,我希望我的pauseActivator执行多个操作 充当条件测试仪,返回true或false 实际调用暂停函数
start()
函数。我在其中到处调用pause()
函数
我现在必须更聪明地调用pause()
,这取决于某些条件。在某些地方,它是在其他地方不需要的条件下执行的
我知道我现在必须创建一个单独的函数来调用pause()
函数。但这是我所能做到的。感觉像个迷宫,我迷路了
编写此代码的最佳方法是什么?职业选手是怎么做到的
更新:
我已经添加了我的代码。基本上,我希望我的pauseActivator
执行多个操作
void doPause() {
//call system default pause function()
}
bool pauseOn = true;
string myPauseTime = "02:30";
bool pauseTimeReached = false;
bool pauseActivator() {
if(pauseOn && systemTime() == myPauseTime){
pauseTimeReached = true;
doPause();
}
return (pauseTimeReached);
}
int start() {
if(maxMovement > 500 && pauseActivator()) {
if(maxA() && secondMovement==600) {
pauseActivator();
}
}
return(0);
}
我建议您使用DoPause进行暂停,并使用一个函数返回暂停状态。如果测试函数具有“隐藏”的副作用,即实际暂停,则可能会导致后续问题。C++、Java和JavaScript是非常不同的语言。我真诚地怀疑您是否使用了这三种方法。使用IDE(重构:提取方法)我的问题不依赖于编程语言。这是一个非常普遍的问题,我在“更新”之后添加了代码,我知道函数应该只执行一个任务。但是,我想将这两个操作捆绑在一起,因此我的代码在编程上集中到一个函数中。