我们需要在php中重定向后执行exit;
,因为exit;
不会停止其余代码的运行。但是为什么我们不在javascript中做这样的事情呢。我想做一些类似的事情
if(window.location.replace("http://something.com")){
return;
}
或
window.location.replace("http://something.com");
throw "stop the execution.";
我需要那样做吗?如果不是,为什么?
为什么我们需要在php中重定向后执行exit();
当你做
header( "Location: ./somepage.php" );
作为php manual on header says
,header()用于发送原始HTTP标头。因此,它不会阻止脚本进一步执行。它将与重定向相关的响应标头发送回浏览器,并继续执行下面的代码。所以exit()
会阻止这样做。
window.location调用后,我们需要return;
吗
JS代码表示浏览器要导航到另一个url。导航完成后也是如此。浏览器导航到新页面,window.location
下面的代码将不会执行,这与上面解释的php行为不同。所以我们不需要它。