我的应用程序正在动态加载脚本,因此我设置了一个window.onerror处理程序来报告阻止脚本加载的语法错误,如下所示:

window.onerror = function(error) {
  alert("ERROR: " + error.message + ": " + error.stack);
};

当我加载脚本时,我得到的是一条提示ERROR: undefined: undefined的alert .当我将其更改为显示error的值和类型时:

window.onerror = function(error) {
  alert("ERROR: " + typeof(error) + ": " + error);
};

我得到的是ERROR: string: SyntaxError: missing ) after argument list美元. firefox 和Chrome都会出现这种情况.

根据文档,SynaxError应该是一个具有messagestack以及其他属性的错误对象.我真的很想知道错误是在哪里发生的,而不仅仅是它是什么!我是不是做错了什么?有什么办法可以让我得到更多关于这个错误的信息吗?

推荐答案

Error事件有多个参数.第一个是事件名称,它是一个字符串.

onerror = (event, source, lineno, colno, error) => {};

Docs

Javascript相关问答推荐

zoom svg以适应圆

未捕获错误:在注销后重定向到/login页面时找不到匹配的路由

Spring boot JSON解析错误:意外字符错误

google docs boldText直到按行执行应用脚本错误

colored颜色 检测JS,平均图像 colored颜色 检测JS

将本机导航路由react 到导航栏中未列出的屏幕?

使用GraphQL查询Uniswap的ETH价格

我的角模板订阅后不刷新'

如何使onPaste事件与可拖动的HTML元素一起工作?

优化Google Sheet脚本以将下拉菜单和公式添加到多行

我在Django中的视图中遇到多值键错误

如何在ASP.NET项目中使用Google Chart API JavaScript将二次轴线值格式化为百分比

TypeError:无法分解';React2.useContext(...)';的属性';basename';,因为它为空

如何在不影响隐式类型的情况下将类型分配给对象?

如何在FastAPI中为通过file:/URL加载的本地HTML文件启用CORS?

如何用javascript更改元素的宽度和高度?

如果NetSuite中为空,则限制筛选

在ReactJS上挂载组件时获得多个身份验证请求

带有JS模块模式的Rails的Importmap错误:";Net::ERR_ABORTED 404(未找到)&Quot;

在采购unpept-visalizations.js时遇到问题