两个问题:
1)我想知道对上一个函数(LayerTen()
)的性能影响如下:
function execit(){
LayerOne();
}
function LayerOne(){
LayerTwo();
}
// and so on, till:
function LayerNine(){ //thanks for correcting, Mike
LayerTen();
}
当然,我知道它取决于函数内部的实际内容,但它们的这种结构无论如何都可能导致性能问题?
2)如果多个但是单独的条件如下例所示,它的流程是什么:它们会一次执行还是一个接一个地执行?
if(condition one){
code
}else{code}
if(condition two){
code
}else{code}
if(condition three){
code
}else{code}
// and so on, till:
if(condition thirty){
code
}else{code}
答案 0 :(得分:0)
Javascript是单线程的。所以唯一的性能问题是内存消耗。虽然if else不会消耗太多内存,但是一个函数会一直保留在内存中,直到它完全结束:
Function execit(){
//memory usage started
LayerOne();
//memory is recycled
}
function LayerOne(){
//already two opened functions...
LayerTwo();
//memory is recycled
}
// and so on, till:
function LayerTen(){
//ten functions in memory
LayerTen();
//memory recycled
}
因此它将10个函数放入内存中,然后再循环使用。这会更好:
function start(){
a();//a is right now recycled
b();//b is right now recycled
}
但是,如果可能的话,这取决于您的实际代码......