ECMAScript 2015 added the ability to use template literals instead of concatenation. Since their use is clearer and more concise, they are preferred in environments that support ECMAScript 2015.
This rule raises an issue when a string is created from the result of two or more concatenations.
function sayHello(name) {
console.log("hello " + name); // ignored
}
function madLib(verb, noun) {
console.log("I really " + verb + " one or two " + noun); // Noncompliant
}
function sayHello(name) {
console.log(`hello ${name}`); // no issue raised before, but this is better
}
function madLib(verb, noun) {
console.log(`I really ${verb} one or two ${noun}`);
}