How does one choose between `"$0"` and `"${BASH_SOURCE[0]}"`

This description from [GNU][1] didn't help me much.

        BASH_SOURCE
        
     An array variable whose members are the source filenames where the
     corresponding shell function names in the FUNCNAME array variable are
     defined. The shell function ${FUNCNAME[$i]} is defined in the file
     ${BASH_SOURCE[$i]} and called from ${BASH_SOURCE[$i+1]}


  [1]: https://www.gnu.org/software/bash/manual/html_node/Bash-Variables.html#Bash-Variables