Today when I was doing some experiments with `==`, I accidentally found out that `"\n\t\r" == 0`. How on earth does `"\n\t\r"` equal to `0`, or `false`?

What I did is:

```
var txt = "\n";  //new line
txt == 0;        //it gives me true

```

And that really annoy me. So I did more:

```
var txt = "\r";  //"return"
txt == 0;        //true

var txt = "\t";  //"tab"
txt == 0;        //true

```

It does not make sense, at all. How's that happen? And more crazy is this:

```
//Checking for variable declared or not

var txt ="\n\t\r";
if(txt!=false){
    console.log("Variable is declared.");
}else{
    console.log("Variable is not declared.");
}

```

What it gives me is `Variable is not declared.`

How is it equal to `0`, or `false`???