Ничего не проверять в vbscript/classic asp

Мне нужно обновить старый классический asp, и я должен вызвать функцию, которая обычно возвращает массив, но при определенных обстоятельствах может возвращать либо Nothing, либо неопределенное значение.

Как я могу проверить, что результат действительно возвращает массив?


person Joel Coehoorn    schedule 22.04.2009    source источник


Ответы (6)


Является ли функция поздней привязкой/имеет возвращаемое значение Variant? Если это так, функция IsArray проверит, содержит ли он тип массива.

person Konrad Rudolph    schedule 22.04.2009

э... я могу ошибаться, но разве это не что-то вроде

If something Is Nothing Then
   'Do something here
Else
   'Do what I used to
End If
person Powerlord    schedule 22.04.2009

IsNull() должен работать, я думаю.

person John M Gant    schedule 22.04.2009
comment
Нужно проверить на Ничего, а не на Null. Null и Nothing — совершенно разные значения. - person Ricardo Souza; 19.04.2015

Если TypeName(что-то) = "Пусто" Тогда...

person Anonymous    schedule 16.06.2011
comment
Нужно снова проверить Ничего и не Пусто - person Ricardo Souza; 19.04.2015

Некрасиво, но функционально!

Function IsNothingType( ByRef obj )
    If TypeName(obj) = "Nothing" Then
        IsNothingType = True
    Else
        IsNothingType = False
    End If  
End Function
person BuvinJ    schedule 13.07.2017

Если вы используете VBScript/WSH, вы можете попробовать функцию/метод "typeof". Это сработало для меня, а выше - нет.

person user314065    schedule 11.04.2010
comment
typeof не существует в VBScript. - person Ricardo Souza; 19.04.2015