게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
javascript 질문 드립니다.
게시물ID : programmer_20047짧은주소 복사하기
작성자 : 효자동사거리
추천 : 0
조회수 : 885회
댓글수 : 13개
등록시간 : 2017/03/23 16:08:10
옵션
  • 창작글
  • 본인삭제금지
안녕하세요. 혼자 javascript 코딩을 하고 있는 사람입니다.
다름이 아니라, 제가 javascript를 이용해서 어떤 함수를 만들었는데, 주석 처리된 부분을 주석을 풀고 가동하면 일부만 작동하고, 주석 처리를 하고 나면 전체 함수가 정상적으로 작동합니다. 그렇다는 이야기는 주석 처리된 while 구문에 무슨 문제가 있는 게 아닐까 싶은데, 도저히 잘 모르겠어서 이렇게 글을 씁니다. 일일이 알려주시는 게 번거로우시다면 제가 어떤 키워드로 검색하면 좋을지 여쭤봐도 될까요? 아래는 함수 전문입니다.

----------------------------function 전문----------------------------------------
window.onload=$(function(){
var before_rows = document.getElementById("before").getElementsByTagName("tr").length;
var recent_rows = document.getElementById("recent").getElementsByTagName("tr").length;
var recent_array = new Array();
var before_array=new Array();
var a; var b; var i; var v; var k; var w; var j; var p; var q; var m; var c;
var recent = document.getElementById("recent");var before = document.getElementById("before");
var longer=null;
var shorter=null;
if((before_rows>recent_rows)===true){
longer=before_rows;
shorter=recent_rows;}
else {longer=recent_rows;
shorter=before_rows;}
for(a=2; a<document.getElementById("recent").getElementsByTagName("tr").length; a++){
recent_array.push(recent.rows[a].cells[0].innerHTML);
}
for(b=2; b<document.getElementById("before").getElementsByTagName("tr").length; b++){
before_array.push(before.rows[b].cells[0].innerHTML);
}
for(i=2;i<before_rows;i++){
var recent_same_name = new Array();
if((recent_array.indexOf(before.rows[i].cells[0].innerHTML))==-1){
before.rows[i].cells[5].innerHTML="REMOVED";
before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";}
else {
var w=recent_array.indexOf(before.rows[i].cells[0].innerHTML);
/*while(recent.rows[w+2].cells[0].innerHTML===recent.rows[w+3].cells[0].innerHTML){
var x=w;
recent_same_name.push(x);
var y=w+1;
if((recent.rows[w+2].cells[0].innerHTML===recent.rows[w+3].cells[0].innerHTML)
&&
(recent.rows[w+3].cells[0].innerHTML!==recent.rows[w+4].cells[0].innerHTML)){
recent_same_name.push(y);
}
w=w+1;
}*/ <- 여기가 문제의 while 구문입니다.
if(recent_same_name.length>1){
for(v=0;v<recent_same_name.length;v++){
if((before.rows[i].cells[0].innerHTML===recent.rows[recent_same_name[v]+2].cells[0].innerHTML)){
if(before.rows[i].cells[1].innerHTML===recent.rows[recent_same_name[v]+2].cells[1].innerHTML){
if(before.rows[i].cells[4].innerHTML===recent.rows[recent_same_name[v]+2].cells[4].innerHTML){
before.rows[i].cells[5].innerHTML="-";
before.rows[i].cells[5].style.backgroundColor = "#FFFFFF";
recent_same_name.splice($.inArray(v,recent_same_name),1);
break;}
else before.rows[i].cells[5].innerHTML="REMOVED";
before.rows[i].cells[5].style.backgroundColor = "#CC3D3D"; 
continue;}
else before.rows[i].cells[5].innerHTML="REMOVED";
before.rows[i].cells[5].style.backgroundColor = "#CC3D3D"; 
continue;}}}else{
if(before.rows[i].cells[0].innerHTML===recent.rows[w+2].cells[0].innerHTML){
if(before.rows[i].cells[1].innerHTML===recent.rows[w+2].cells[1].innerHTML){
if(before.rows[i].cells[4].innerHTML===recent.rows[w+2].cells[4].innerHTML){
before.rows[i].cells[5].innerHTML="-";
before.rows[i].cells[5].style.backgroundColor = "#FFFFFF";
continue;
}else before.rows[i].cells[5].innerHTML="REMOVED";
before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";
}else before.rows[i].cells[5].innerHTML="REMOVED";
before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";
}else before.rows[i].cells[5].innerHTML="REMOVED";
before.rows[i].cells[5].style.backgroundColor = "#CC3D3D";}}}
for(k=2;k<recent_rows;k++){
var same_name = new Array();
if((before_array.indexOf(recent.rows[k].cells[0].innerHTML))===-1){
recent.rows[k].cells[5].innerHTML="NEW";
recent.rows[k].cells[5].style.backgroundColor = "#47C83E";}
else {var j = before_array.indexOf(recent.rows[k].cells[0].innerHTML);
while(before.rows[j+2].cells[0].innerHTML===before.rows[j+3].cells[0].innerHTML){
var p=j;
same_name.push(p);
var q=j+1;
if((before.rows[j+2].cells[0].innerHTML===before.rows[j+3].cells[0].innerHTML)
&&
(before.rows[j+3].cells[0].innerHTML!==before.rows[j+4].cells[0].innerHTML)){
same_name.push(q);
}
j=j+1;
}
}}});
</script>
출처 글쓴이의 코드
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호