복습 6 - 2차원시배열

2025. 1. 17. 16:24·Web
2차배열 응용
배열의 데이터 리스트로 HTML에 출력 (역순)
리스트 전체보기
리스트 내용 검색

 

data.js 

var news = [
	["뉴스제목1","프레시안","2025-01-14"],
	["뉴스제목2","연합뉴스","2025-01-16"],
	["뉴스제목3","프레시안","2025-01-17"],
	["뉴스제목4","서울신문","2025-01-20"],
	["뉴스제목5","YTN","2025-01-22"]
]

re8.html

<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>배열로 값을 출력 - 2차 배열(원시배열[], 키배열{})</title>
</head>
<body>

<ul id="news_notice">
</ul>
<br><br>
언론사 검색 : <input type="text" id="corp">
<input type="button" value="검색" onclick="search_news()">
<input type="button" value="전체" onclick="all_news()">

</body>
<!-- data.js는 배열 데이터가 있는 파일 -->
<script src="./data.js?v=1"></script>	<!-- 데이터 로드 먼저!! -->
<!-- 해당 배열로 데이터를 출력하는 코드 파일 -->
<script src="./re8.js?v=6"></script>
</html>

re8.js

var search_word = "";	//검색단어 전역변수
var all_view = "Y";	//전체 리스트 핸들링

var all_news = function(){
	this.all_view = "Y";
	news_datalist();
	
}

var search_news = function() {
	this.all_view = "N";
	this.search_word = document.getElementById("corp").value;	//전역변수 검색어 setter
	news_datalist();	//함수 재실행
}

var news_datalist = function() {
	//console.log(this.all_view);
	var news_notice = document.getElementById("news_notice");
	var html = "";

	var i = news.length - 1;
	var ii = 0;

	//배열 역순에서 중요한거 시작은 개수-1 종료는 0!!!!!!!!
	while (i >= 0) {
		if (this.search_word == news[i][1] && this.all_view =="N") {
			ii = 0;
			html += "<li>";
			while (ii < news[0].length) {
				//console.log(news[i][ii]);
				html += news[i][ii] + "&nbsp";
				ii++;
			}
			html += "</li>";
		}else if(this.all_view =="Y"){
			ii = 0;
			html += "<li>";
			while (ii < news[0].length) {
				//console.log(news[i][ii]);
				html += news[i][ii] + "&nbsp";
				ii++;
			}
			html += "</li>";			
		}
		i--;
	}
	news_notice.innerHTML = html;
}

news_datalist();	//함수 강제 실행
  • innerHTML : HTML태그를 사용가능 (
    • 단점 : 신규데이터 입력시 기존데이터 삭제됨 => 누적시키는 변수 필요
  • append, insertBefore : Node형태이며 순차적으로 데이터 적용가능
    • 단점 : 태그 작동 안됨 문자로 출력
  • 배열 역순으로 출력시 주의점
    • 시작 : length - 1
    • 종료 : 0    //반복문에 사용시 0을 포함하도록!!

 

 

저작자표시 비영리 변경금지 (새창열림)
'Web' 카테고리의 다른 글
  • 응용문제 - html + jsp
  • 복습 7 - 2차key배열
  • 복습 5 - 반복문, 1차배열
  • HTML + Javascript 5 [배열]
9na0
9na0
응애
  • 9na0
    구나딩
    9na0
  • 전체
    오늘
    어제
    • 분류 전체보기 (211)
      • Web (118)
      • Java (28)
      • 데이터베이스 (14)
      • 세팅 (12)
      • 과제 (3)
      • 쪽지시험 (2)
      • 정보처리기사 (4)
      • 서버 (25)
  • 블로그 메뉴

    • 링크

      • 포폴
      • 구깃
    • 공지사항

    • 인기 글

    • 태그

      exam1_1~10
      java_io1~10
      Oracle
      macbook pro m4
      spring-boot
      noticewriteok
      net2
      net3
      net5~10
      ab1
      file24
      notice_writer
      re_java10
      datalist
      file25
      io_dto
      file25_t
      net1
      re2
      net4
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    9na0
    복습 6 - 2차원시배열
    상단으로

    티스토리툴바