안녕하세요. 혼자 javascript 코딩을 하고 있는 사람입니다. <div>다름이 아니라, 제가 javascript를 이용해서 어떤 함수를 만들었는데, 주석 처리된 부분을 주석을 풀고 가동하면 일부만 작동하고, 주석 처리를 하고 나면 전체 함수가 정상적으로 작동합니다. 그렇다는 이야기는 주석 처리된 while 구문에 무슨 문제가 있는 게 아닐까 싶은데, 도저히 잘 모르겠어서 이렇게 글을 씁니다. 일일이 알려주시는 게 번거로우시다면 제가 어떤 키워드로 검색하면 좋을지 여쭤봐도 될까요? 아래는 함수 전문입니다.</div> <div><br></div> <div>----------------------------function <span style="font-size:9pt;">전문----------------------------------------</span></div> <div><div>window.onload=$(function(){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var before_rows = document.getElementById("before").getElementsByTagName("tr").length;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var recent_rows = document.getElementById("recent").getElementsByTagName("tr").length;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var recent_array = new Array();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var before_array=new Array();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var a; var b; var i; var v; var k; var w; var j; var p; var q; var m; var c;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span><span style="font-size:9pt;">var recent = document.getElementById("recent");var before = document.getElementById("before");</span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var longer=null;</div> <div><span style="font-size:9pt;"><span class="Apple-tab-span" style="white-space:pre;"> </span>var shorter=null;</span><span class="Apple-tab-span" style="font-size:9pt;white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if((before_rows>recent_rows)===true){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>l<span style="font-size:9pt;">onger=before_rows;</span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>shorter=recent_rows;}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else {longer=recent_rows;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>shorter=before_rows;}<span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(a=2; a<document.getElementById("recent").getElementsByTagName("tr").length; a++){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>recent_array.push(recent.rows[a].cells[0].innerHTML);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(b=2; b<document.getElementById("before").getElementsByTagName("tr").length; b++){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before_array.push(before.rows[b].cells[0].innerHTML);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(i=2;i<before_rows;i++){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var recent_same_name = new Array();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if((recent_array.indexOf(before.rows[i].cells[0].innerHTML))==-1){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].innerHTML="REMOVED";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else {</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var w=recent_array.indexOf(before.rows[i].cells[0].innerHTML);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>/*while(recent.rows[w+2].cells[0].innerHTML===recent.rows[w+3].cells[0].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var x=w;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>recent_same_name.push(x);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var y=w+1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if((recent.rows[w+2].cells[0].innerHTML===recent.rows[w+3].cells[0].innerHTML)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>&&</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>(recent.rows[w+3].cells[0].innerHTML!==recent.rows[w+4].cells[0].innerHTML)){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>recent_same_name.push(y);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>w=w+1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}*/ <- 여기가 문제의 while 구문입니다.</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(recent_same_name.length>1){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(v=0;v<recent_same_name.length;v++){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if((before.rows[i].cells[0].innerHTML===recent.rows[recent_same_name[v]+2].cells[0].innerHTML)){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(before.rows[i].cells[1].innerHTML===recent.rows[recent_same_name[v]+2].cells[1].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(before.rows[i].cells[4].innerHTML===recent.rows[recent_same_name[v]+2].cells[4].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].innerHTML="-";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#FFFFFF";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>recent_same_name.splice($.inArray(v,recent_same_name),1);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>break;}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else <span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].innerHTML="REMOVED";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#CC3D3D"; </div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>continue;<span style="font-size:9pt;">}</span></div> <div><span style="font-size:9pt;"><span class="Apple-tab-span" style="white-space:pre;"> </span>else <span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].innerHTML="REMOVED";</span></div> <div><span style="font-size:9pt;"><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#CC3D3D"; </span></div> <div><span style="font-size:9pt;"><span class="Apple-tab-span" style="white-space:pre;"> </span>continue;</span><span style="font-size:9pt;">}}}else{</span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(before.rows[i].cells[0].innerHTML===recent.rows[w+2].cells[0].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(before.rows[i].cells[1].innerHTML===recent.rows[w+2].cells[1].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if(before.rows[i].cells[4].innerHTML===recent.rows[w+2].cells[4].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].innerHTML="-";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#FFFFFF";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>continue;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}else before.rows[i].cells[5].innerHTML="REMOVED";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}else before.rows[i].cells[5].innerHTML="REMOVED";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}else before.rows[i].cells[5].innerHTML="REMOVED";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";}}}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>for(k=2;k<recent_rows;k++){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var same_name = new Array();</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if((before_array.indexOf(recent.rows[k].cells[0].innerHTML))===-1){<span class="Apple-tab-span" style="white-space:pre;"> </span></div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>recent.rows[k].cells[5].innerHTML="NEW";</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>recent.rows[k].cells[5].style.backgroundColor = "#47C83E";}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>else {var j = before_array.indexOf(recent.rows[k].cells[0].innerHTML);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>while(before.rows[j+2].cells[0].innerHTML===before.rows[j+3].cells[0].innerHTML){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var p=j;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>same_name.push(p);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>var q=j+1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>if((before.rows[j+2].cells[0].innerHTML===before.rows[j+3].cells[0].innerHTML)</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>&&</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>(before.rows[j+3].cells[0].innerHTML!==before.rows[j+4].cells[0].innerHTML)){</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>same_name.push(q);</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>j=j+1;</div> <div><span class="Apple-tab-span" style="white-space:pre;"> </span>}<span class="Apple-tab-span" style="font-size:9pt;white-space:pre;"> </span></div> <div><span style="font-size:9pt;">}}});</span></div> <div></script></div></div>
댓글 분란 또는 분쟁 때문에 전체 댓글이 블라인드 처리되었습니다.