未定义数组的JSON.parse回退以避免异常

问题描述 投票:-1回答:1

我正在解析我的数组,如果定义了一切都没问题:

JSON.parse(myArray);

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

什么是最好的后备,有什么比这更好的:

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

类似于我们首先验证对象以避免异常(如果未定义)

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

那么,有什么比这短

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

谢谢。

javascript arrays undefined fallback
1个回答
2
投票

您当前的方法也可以正常工作。我真的没有理由改变它,但如果你觉得你需要两种选择:

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

var myArray = '[]';

否则,如果myArray是传递给您正在解析它的方法的参数,则可以在arguments部分中将其默认。

function dosomething(myArray = '[]') {
    JSON.parse(myArray);
}
© www.soinside.com 2019 - 2024. All rights reserved.