Javascript 如果变量未定义,是否有办法停止浏览器中的脚本?

Javascript 如果变量未定义,是否有办法停止浏览器中的脚本?,javascript,Javascript,我有一个javascript方法,它给了我这个错误: Cannot read property 'filter' of undefined 我一直在尝试调试这个,但运气不好。是否有一种方法,在此之前,我可以检查变量的值,如果未定义,则暂停浏览器,以便转到控制台检查其他变量 以下是涉及的代码: this.getFilteredTestStatusActions = function (screen, roleName) { var self = _this; va

我有一个javascript方法,它给了我这个错误:

Cannot read property 'filter' of undefined
我一直在尝试调试这个,但运气不好。是否有一种方法,在此之前,我可以检查变量的值,如果未定义,则暂停浏览器,以便转到控制台检查其他变量

以下是涉及的代码:

this.getFilteredTestStatusActions = function (screen, roleName) {
        var self = _this;
        var filtered = self.userTestStatusActions.filter(function (val) {

我的问题是没有定义self.userTestStatusActions。如果浏览器未定义,我想在此时暂停浏览器,以便“查看”其他变量。

通常,您可以通过执行以下操作来检查javascript中的变量是否
未定义:

if(self.userTestStatusActions === undefined){
  // self.userTestStatusActionshas not been defined
}
您可以使用
调试器强制javascript调试器关键字

函数testUndefined(myVariable){
如果(myVariable==未定义){
调试器;
}
}
testUndefined()
使用try-catch块

try{

  var filtered = self.userTestStatusActions.filter(function (val) {...}

}
catch(e){

  console.log(e);

}
或者使用
typeof

if( typeof (self.userTestStatusActions) === "undefined"){
 ...
}

并在其中一行的上方附加一个断点。

请共享更多代码您使用的浏览器是哪种浏览器?浏览器应提供所涉及的代码行。打开“开发人员工具”浏览器控制台的Chrome。浏览器提供代码行,但停止所有操作,我无法调试/检查其他变量的值。