如何在throw new
语句期间使用异常名称中的变量引发异常?
我有一个我试图抛出的异常列表,具体取决于一个变量的长度是否为零。例如,异常的名称包含变量名称。
作品
if (X.length === 0)
{
throw new NoXException();
}
if (Y.length === 0)
{
throw new NoYException();
}
if (Z.length === 0)
{
throw new NoZException();
}
不工作
var X = 'Oh';
var Y = 'Hai';
var Z = '';
// Contains "NoZException"
var ex = "No" + ((X.length != 0) ? ((Y.length != 0) ? 'Z' : 'Y') : 'X') + "Exception";
// Throwing ex gives an error
throw new ex();