我觉得Javascript试图杀死我。编译器在任何静态类型语言(包括FORTRAN)中捕获的错误,或在任何体面的动态类型语言中变成运行时异常的错误都会被Javascript静静地吞噬,耐心地等待在其他地方显示为错误。访问未定义对象属性时的Javascript通知
每当我们编写前端代码(现在有了Angular),我们大部分时间都在搜索错误,如编写$scope.result = data.results
而不是data.result
。虽然有些工具可以提供帮助,但仍需要大量的工作。
有没有办法让JavaScript环境(在浏览器中)在有人试图读取不存在的对象属性时记录警告?我不想改变语言的语义 - 访问data.results
仍然应该返回undefined
,我只是想在控制台上看到一条警告,声明“不存在访问的属性,文件...行...”。
试过'try..catch'? – guest271314
在对象中访问不存在的属性不会引发任何异常,它只是返回'undefined'。我该怎么抓? – zmbq
我总是可以切换到TypeScript。我可能没有选择...... – zmbq