Question: Try the below code snippet, it is giving weird results. Could anyone explain it?

```
var s = "10+10";
alert("Evaluation 1: " + eval(s+s+s)); // 2040
alert("Evaluation 2: " + eval(s+2));   // 112

```

Output that I am expecting is 30 and 22

Answer: 
Nothing weird about it at all:

```
s + s + s === "10+10" + "10+10" + "10+10" === "10+1010+1010+10" => 2040
s + 2 === "10+10" + "2" === "10+102" => 112

```
Take the `s` variable out of quotes:

```
var s = 10 + 10;

```

**RETURNS**

Evaluation 1: 60

Evaluation 2: 22