I found the following code snippet and am looking for some clarification on how it works, because it solves what I'm hoping to do. The variable 'html' is a string, which is returned form the function showCard, and is placed into the HTML code as a div. I'm able to replicate this however the string output is returned and starts with: "..." so the div isn't created, the string is simply moved into my HTML because the quotes remain outside the div.

```
function Card(suit, val, name, symbol)
{
        this.suit = suit;
        this.val = val;
        this.name = name;
        this.symbol = symbol;

    this.showCard =function showCard()
    {
        var html="";
        switch(this.suit)
        {
            case "hearts": suit_text = "&hearts;";
            break;
            case "diamonds": suit_text = "&diams;";
            break;
            case "spades": suit_text = "&spades;";
            break;
            case "clubs": suit_text = "&clubs;";
            break;
        }
        html="<div class='card " + this.suit + "'><div class='card-value'>" + this.symbol + "</div><div class='suit'>" + suit_text + "</div><div class='main-number'>"+this.symbol +"</div><div class='invert card-value'>"+this.symbol+"</div><div class='invert suit'>"+suit_text+"</div></div>";
        return html;
    }
}

```