未定义数组的JSON.parse后备以避免异常

时间:2019-03-25 13:15:55

标签: javascript arrays undefined fallback

我正在解析数组,如果定义了,一切就OK了:

JSON.parse(myArray);

但是,如果myArray未定义,我会遇到异常。

什么是最好的后备,还有什么比这更好的了?

JSON.parse(myArray || '[]');

类似于我们首先验证对象以避免未定义的异常

if (obj) {
//do something with obj.something
}

那么,还有什么比

更短的吗?
JSON.parse(myArray || '[]'); 

谢谢。

1 个答案:

答案 0 :(得分:2)

您当前的方法也可以正常工作。我真的看不出要更改它的理由,但是如果您觉得需要两个选择的话:

首先,您可以初始化myArray,将其默认为一个空数组,然后再为其分配值。

var myArray = '[]';

否则,如果myArray是传递给您要从中进行解析的方法的参数,则可以在参数部分中将其缺省。

function dosomething(myArray = '[]') {
    JSON.parse(myArray);
}