This is pretty useful for saving 2 characters in codegolfing challenges.
For example:
> 'string'.split('').reverse().join('')
becomes
> 'string'.split``.reverse().join``
For example:
> 'string'.split('').reverse().join('')
becomes
> 'string'.split``.reverse().join``
The function invoked does NOT simply receive the evaluated string, it gets the template and can decide what to do with it, or not, including how to encode/“escape” insertion values or other such issues.