# nlohmann::basic_json_view::empty ``` bool empty() const noexcept; ``` Checks whether [`size()`](https://json.nlohmann.me/api/basic_json_view/size/index.md) is `0`, as [`BasicJsonType::empty()`](https://json.nlohmann.me/api/basic_json/empty/index.md) would for the same value. ## Return value The return value depends on the type and is defined as follows: | Value type | return value | | ---------- | ------------------- | | null | `true` | | discarded | `true` | | boolean | `false` | | string | `false` | | number | `false` | | object | `object_t::empty()` | | array | `array_t::empty()` | ## Exception safety No-throw guarantee: this function never throws exceptions. ## Complexity Constant. ## Notes As for [`BasicJsonType::empty()`](https://json.nlohmann.me/api/basic_json/empty/index.md), this does not return whether a string value is empty -- it is `false` for any string, regardless of its length. ## Examples Example The example below uses [`size()`](https://json.nlohmann.me/api/basic_json_view/size/index.md) and `empty()` to decide whether a parsed message is worth acting on, without materializing it into a `BasicJsonType` value. ``` #include #include using json_document = nlohmann::json_document; int main() { std::cout << std::boolalpha; // decide whether a batch is worth processing before building any // nlohmann::json value for it json_document batch = json_document::parse(R"([1, 2, 3, 4, 5])"); json_document empty_batch = json_document::parse("[]"); std::cout << batch.root().empty() << ' ' << batch.root().size() << '\n'; std::cout << empty_batch.root().empty() << ' ' << empty_batch.root().size() << '\n'; // as for basic_json: null has size 0, every other scalar has size 1 json_document n = json_document::parse("null"); json_document s = json_document::parse(R"("hi")"); std::cout << n.root().size() << ' ' << s.root().size() << '\n'; } ``` Output: ``` false 5 true 0 0 1 ``` ## See also - [size](https://json.nlohmann.me/api/basic_json_view/size/index.md) - return the number of elements - [`BasicJsonType::empty`](https://json.nlohmann.me/api/basic_json/empty/index.md) - the corresponding function of `basic_json` ## Version history - Added in version 3.13.0 unreleased.