检测javascript(代码中)中的错误并采取相应措施

时间:2015-01-06 21:07:23

标签: javascript error-handling

我有一些var data可能有一个data[0].substring(1)[1]或者它可能会胜出(关于 .substring()

我无法更改收到的数据,也不会更改指定的格式。请不要问它,这个问题的想法正是在这种情况下回答。

我试图这样做

if(data[0].substring(1)[1]){

}

但是Cannot read property 'substring' of undefined无论如何都失败了所以现在我对如何做到这一点表示怀疑。

这可能吗?有解决方法吗?

2 个答案:

答案 0 :(得分:1)

在尝试访问之前,您应该检查data[0]是否存在:

if(data[0] && data[0].substring(..)) {
  ...
}

答案 1 :(得分:0)

使用try/catch/finally

var txt;
try{
    txt=data[0].substring(1)[1];
}
catch(e){
    console.log(e);
    console.log("The variable does not contain this data."); // at your own choice
}
finally{
    if(txt!=undefined){
    // do stuff with txt
    }
}