The backlog is in its core a priorized list of things that are to be done for a product. In its nature it is a dynamic artifact which changes depending on new insights. Depending on the context, the requirements a backlog has to fullfil vastly vary.
Just like all artifacts in an agile enviroment, its main purpose is to increase quality or speed of the development. The backlog achieves this by creating clarity about the upcoming work and its priority. It also prevents that context that is not well known will be overspecified as the focus lies with the items at the top.