Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript Basics Working with Strings Write a Template Literal

what is wrong here?

app.js
const flavor = "Blueberry";
const type = "Smoothie";
const price = 4.99;

const drink = `${flavor}` + 'Blueberry ' + `${type}` + ':Smoothie ' + '$4.99' + `${price}`;

1 Answer

J.D. Williams
J.D. Williams
17,816 Points

It appears that your declaration of the 'drink' variable concatenates multiple template literals with string literals.

const drink = `${flavor}` + 'Blueberry ' + `${type}` + ':Smoothie ' + '$4.99' + `${price}`;
// This code renders "BlueberryBlueberry Smoothie:Smoothie $4.994.99"

Use a single template literal, instead of concatenation, by removing the hard-coded strings ('Blueberry', ':Smoothie', and '$4.99'). One possible solution is the following.

const drink = `${flavor} ${type}: $${price}`;
// This code renders "Blueberry Smoothie: $4.99"