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


string concatenation

 bookmarksResults.innerHTML+='<div class="well">'+
            '<a class="btn btn-default" target="_blank" href="'+url+'">visit</a>'+
            '<a onclick="deleteBookMark(\''+url+'\')" class="btn btn-danger" href="#">Delete</a>'+

i dont understand the concatention in the deleteBookMark function call any help please

2 Answers

Steven Parker
Steven Parker
229,005 Points

Concatenation is just joining strings together to make a longer one. In this example, it is used in part to make a string using the contents of variables, but it is also being used just to keep the code line from being really long.

i still have a problem in understanding this: deleteBookMark(\''+url+'\')

Steven Parker
Steven Parker
229,005 Points

Normally, quote marks enclose a literal string. If you want to include a quote mark inside a string you have to do something special. The backslash (\) is known as the "escape character", and when you put it before a quote mark it means that quote mark is part of the string and does not indicate the end of it. The other quote mark that follows the first one does end the string. Then the +url+ part just joins whatever is in the "url" variable to the string, and then joins that onto the next string (which also has an escaped quote mark).

Here's a simpler example:

name = 'Bob';
message = 'Is your name \'' + name + '\'?';
console.log(message);  // shows -->   Is your name 'Bob'?

Thanks i got it Steve