The official definition: in computer programming, a variable is a storage location paired with an associated symbolic name (an identifier) which contains a value.
In other words, a variable is a storage location for data. Variables have names. Some computer language mandate you assign a data type to variables. When asked for the "official definition" (or best definition) please use the definition stated above.
Different programming languages assign variables in different ways