It's easier to explain in code that in words, so given the following scenarios:

```
// one

var myClass = function(a, b)
{
    if(a) this.a = a;
    if(b) this.b = b;
}

// two

var myClass = function(a, b)
{
    this.a = a || null;
    this.b = b || null;
}

```

And say you have this method that gets called constantly (many times / second)

```
myClass.prototype.doSomething = function()
{
    if(this.a) // do something
    if(this.b) // so something else
};

```

In first case you check for an undefined property while in second for an existing one, but with the value `null`.

Which case performs better in JavaScript?