Objects inheritance concept in JavaScript
<p>I just learned about self-referencing objects in this <a href="http://stackoverflow.com/questions/7015635/weird-self-object-in-window-object">question</a>. This is awesome that people here at StackOverflow know every dark corner of JavaScript.</p>

<p>Today I wanted to use my knowledge and use a self-referencing object in my code but I couldn't make it. 
I'm trying to make a self referencing object that have different values in different levels. I want every level of my object have the main properties that I'm defining in level one and level two and below have all properties of level two and so on...
Let's see what I'm trying to do:</p>

<p><code>obj</code> is an object that is self referencing, it means <code>obj.obj</code> refer to <code>obj</code> and so on...
I want  to have a property in <code>obj.obj</code> but not in <code>obj</code>, like <code>obj.obj.newProp = "myString"</code> and then every level below the level two should have the <code>newProp</code>.
This is the code I wrote that I'm sure is not current!</p>

<pre><code>var obj = {},
    obj.obj = obj,
    obj.obj.newProp = "myString";
</code></pre>

<p>But when I look at obj it contains <code>"myString"</code>. How can I prevent <code>obj</code> refering to <code>obj.obj</code>?</p>
