Very close to what you posted, actually. You can use something called Bash parameter expansion to accomplish this.
To get the assigned value, or default
if it’s missing:
FOO="${VARIABLE:-default}" # If variable not set or null, use default.
# If VARIABLE was unset or null, it still is after this (no assignment done).
Or to assign default
to VARIABLE
at the same time:
FOO="${VARIABLE:=default}" # If variable not set or null, set it to default.