JSON is a way to store / transmit (potentially) complex data structures easily. It's essentially a few primitive data types (null, booleans, integers, floats and text) as well as a list (usable for set/tuple/list/array/...) and map (usable for objects or maps).
There are countless ways to store / transmit such data structures, but the only one with similar prevalence is XML. XML used to be the de-facto way to do this, but these days JSON is the go-to choice. There are some differences (XML has attributes), but in many cases, either one will do (and it isn't uncommon for both to be supported).