如果代码给出错误do。。javascript
当一段javascript代码在控制台中出现错误时。我如何做这样的事情:如果这段代码返回错误,执行另一段代码 这就是我所拥有的:如果代码给出错误do。。javascript,javascript,error-handling,Javascript,Error Handling,当一段javascript代码在控制台中出现错误时。我如何做这样的事情:如果这段代码返回错误,执行另一段代码 这就是我所拥有的: try { var operator = <?=$this->shopRequest[operator]?>; } catch(errorObj) { var operator = sessionStorage.getItem('operator'); } 试试看{ var算子=; }捕获(错误对象){ var operator=s
try {
var operator = <?=$this->shopRequest[operator]?>;
} catch(errorObj) {
var operator = sessionStorage.getItem('operator');
}
试试看{
var算子=;
}捕获(错误对象){
var operator=sessionStorage.getItem('operator');
}
这是我在控制台中遇到的错误:
未捕获的语法错误:意外标记
您可以这样做:
try
{
// Run some code here
}
catch(err)
{
// Handle errors here; You can make a call to the other piece of code from here
}
如果我正确理解了你的答案,你应该使用
try {
// your code
} catch(e) {
console.err('Ops ' + e);
// execute here other code
}
尝试:
var运算符=”;
警报(操作员);
编辑
更好的:
var operator = "<?=str_replace('"', '\"', $this->shopRequest[operator])?>";
var运算符=“查看try…catch
的输出是什么
。我想它不包括所需的引号。如果不简单地修复语法错误,就无法修复语法错误。不要使用try/catch。这不是应该被捕获的错误,而是应该被修复的错误<代码>$this->shopRequest[operator]
显然不是您所期望的,所以请看一看。如果它应该是一个字符串,那么添加引号就足够了:var operator=“”
@nieknijl您必须检测PHP中的情况,并防止生成语法错误的代码。鉴于OP在评论中说(查看您的答案,我相信您已经阅读了),输出是一个数字,这是无效的逻辑。如果数字是真的,你不应该将其输出为字符串,但现在我使用数字作为字符串,这是OK,因为我无法进入php代码,因为这是后端的东西,公司中的另一个人处理。我需要代表,添加你的答案,我将接受正确的答案,因为你是第一个,可能这是对你的剽窃。我知道我可以在我正在工作的cms中访问它,但我不能做比请求值更多的事情。@RGraham当时我还没有阅读你的评论,我开始写我的答案。有时,当我需要将值从PHP直接传递到JavaScript时,我会使用这种方法,我不想等到页面加载后再使用。所以如果你写下你自己的答案,如果你愿意,我会删除我自己的答案
var operator = "<?=str_replace('"', '\"', $this->shopRequest[operator])?>";