<pre style="font-family:'굴림체';font-size:9pt;"><span style="color:#808080;font-style:italic;"><br></span><span style="font-style:italic;">Sandbox</span>.<span style="color:#660e7a;font-weight:bold;">modules </span>= {};<br><br><span style="font-style:italic;">Sandbox</span>.<span style="color:#660e7a;font-weight:bold;">modules</span>.<span style="color:#7a7a43;">returnNumbers </span>= <span style="color:#000080;font-weight:bold;">function</span>(MYAPP) {<br> MYAPP.<span style="color:#7a7a43;">return100 </span>= <span style="color:#000080;font-weight:bold;">function</span>() {<span style="color:#000080;font-weight:bold;">return </span><span style="color:#0000ff;">100</span>;};<br>};<br><br><span style="font-style:italic;">Sandbox</span>.<span style="color:#660e7a;font-weight:bold;">modules</span>.<span style="color:#7a7a43;">returnLetters </span>= <span style="color:#000080;font-weight:bold;">function</span>(MYAPP) {<br> MYAPP.<span style="color:#7a7a43;">returnABC </span>= <span style="color:#000080;font-weight:bold;">function</span>() {<span style="color:#000080;font-weight:bold;">return </span><span style="color:#008000;font-weight:bold;">"ABC"</span>;};<br>};<br><br><br><span style="color:#000080;font-weight:bold;">function </span><span style="font-style:italic;">Sandbox</span>() {<span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"> </span><span style="color:#000080;font-weight:bold;">var </span><span style="color:#458383;">args </span>= Array.<span style="color:#660e7a;font-weight:bold;">prototype</span>.<span style="color:#7a7a43;">slice</span>.<span style="color:#7a7a43;">call</span>(<span style="color:#458383;">arguments</span>); <span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"> </span><span style="color:#000080;font-weight:bold;">var </span><span style="color:#458383;">callback </span>= <span style="color:#458383;">args</span>.<span style="color:#7a7a43;">pop</span>(); <span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"> </span><span style="color:#000080;font-weight:bold;">var </span><span style="color:#458383;">requiredmodules </span>= <span style="color:#458383;">args</span>; <span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"> </span><span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"> </span><span style="color:#000080;font-weight:bold;">for </span>(<span style="color:#660e7a;font-weight:bold;">i</span>=<span style="color:#0000ff;">0</span>; <span style="color:#660e7a;font-weight:bold;">i</span>< <span style="color:#458383;">requiredmodules</span>.<span style="color:#660e7a;font-weight:bold;">length</span>; <span style="color:#660e7a;font-weight:bold;">i</span>++) {<br><span style="font-style:italic;">Sandbox</span>.<span style="color:#660e7a;font-weight:bold;">modules</span>[<span style="color:#458383;">requiredmodules</span>[<span style="color:#660e7a;font-weight:bold;">i</span>]](<span style="color:#000080;font-weight:bold;">this</span>);<br> }<br><span style="color:#808080;font-style:italic;"><br></span><span style="color:#808080;font-style:italic;"> </span><span style="color:#458383;">callback</span>(<span style="color:#000080;font-weight:bold;">this</span>);<br><br>}<br><span style="color:#808080;font-style:italic;"><br></span><span style="color:#000080;font-weight:bold;">new </span><span style="font-style:italic;">Sandbox</span>(<span style="color:#008000;font-weight:bold;">'returnNumbers'</span>, <span style="color:#008000;font-weight:bold;">'returnLetters'</span>, <span style="color:#000080;font-weight:bold;">function </span>(MYAPP) {<br><br><span style="color:#660e7a;font-weight:bold;">console</span>.<span style="color:#7a7a43;">log</span>(MYAPP.<span style="color:#7a7a43;">return100</span>());<br><span style="color:#660e7a;font-weight:bold;">console</span>.<span style="color:#7a7a43;">log</span>(MYAPP.<span style="color:#7a7a43;">returnABC</span>());<br>});</pre><pre style="font-family:'굴림체';font-size:9pt;">//////////</pre><pre style="font-family:'굴림체';font-size:9pt;"><br></pre><pre style="font-family:'굴림체';font-size:9pt;">여기서 생성자로 생성한 값을 외부에서 접근하려고할때</pre><pre style="font-family:'굴림체';font-size:9pt;">마지막부근에 변수선언해서 <span style="font-size:9pt;line-height:1.5;color:#660e7a;font-weight:bold;">console</span><span style="font-size:9pt;line-height:1.5;">.</span><span style="font-size:9pt;line-height:1.5;color:#7a7a43;">log</span><span style="font-size:9pt;line-height:1.5;">(</span><span style="font-size:9pt;line-height:1.5;color:#660e7a;font-weight:bold;font-style:italic;">aaa</span><span style="font-size:9pt;line-height:1.5;">.</span><span style="font-size:9pt;line-height:1.5;color:#7a7a43;">return100</span><span style="font-size:9pt;line-height:1.5;">()) 이런식으로 찍어내지 않는이상 접근이 전혀 안되는건가요?</span></pre><pre style="font-family:'굴림체';font-size:9pt;"></pre><pre style="font-size:9pt;font-family:'굴림체';"><span style="color:#000080;font-weight:bold;">var aaa = new </span><span style="font-style:italic;">Sandbox</span>(<span style="color:#008000;font-weight:bold;">'returnNumbers'</span>, <span style="color:#008000;font-weight:bold;">'returnLetters'</span>, <span style="color:#000080;font-weight:bold;">function </span>(MYAPP) {<br><br><span style="color:#660e7a;font-weight:bold;">console</span>.<span style="color:#7a7a43;">log</span>(MYAPP.<span style="color:#7a7a43;">return100</span>());<br><span style="color:#660e7a;font-weight:bold;">console</span>.<span style="color:#7a7a43;">log</span>(MYAPP.<span style="color:#7a7a43;">returnABC</span>());<br>});</pre><pre style="font-family:'굴림체';font-size:9pt;"><br></pre>