Делфи 11.2, Windows 10 x64
Я использую JsonDataObject из https://github.com/ahausladen/JsonDataObjects
Я не понимаю, почему я не могу проверить объект, чтобы узнать, является ли он TJsonArray или TJsonObject следующим образом:
if (arrayValue[0].ObjectValue is TJsonArray) or (arrayValue[0].ObjectValue is TJsonObject) then

ObjectValue всегда TJsonObject и никогда не может быть TJsonArray. Точно так же, как ArrayValue всегда TJsonArray, оно никогда не может быть TJsonObject.
Чтобы узнать, к какому типу относится элемент массива, вместо этого используйте его свойство Typ:
if (arrayValue[0].Typ = jdtArray) or (arrayValue[0].Typ = jdtObject) then
Трудно сказать по одной строке кода. Пожалуйста, предоставьте минимальный воспроизводимый пример