메뉴 건너뛰기

2017.07.12 18:35

7장 10번문제

조회 수 1868 댓글 1

안녕하세요. 책을 사서 열심히 공부하고 있는 학생입니다. 덕분에 재밌게 배우고 있습니다.

문제를 풀다가 7장의 10번 문제에 질문이 있습니다.

 

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<meta http-equiv="X-UA-Compatible" content="ie=edge">

<title>Document</title>

<script>

//메소드

function set(title,author,price){

this.title = title;

this.author =author;

this.price =price;

}

</script>

</head>

<body>

<h2>book 객체 만들기</h2>

<hr>

<script>

var i;

var bookArray = new Array();

var newArray = new Array();

for(i=0;i<5;i++){

bookArray[i] = prompt("콤마(,)로 분리하면서 책제목 저자 가격 순으로 입력","");

}

 

for(i=0;i<5;i++){

sp =bookArray[i].split(",");

 

var book = new Object();

book.title = "HTML";

book.author = "황기태";

book.price = "20000";

book.set=set;

 

book.set(sp[0],sp[1],sp[2]);

newArray[i] = book;

}

 

for(i=0;i<5;i++){

document.write(newArray[i] + "<br>");

}

 

document.write("<hr>가장 가격이 비싼 책은 ");

</script>

</body>

</html>

 

이렇게 작성을 했는데 결과는

book 객체 만들기


[object Object]
[object Object]
[object Object]
[object Object]
[object Object]


가장 가격이 비싼 책은

 

이렇게 나옵니다. ㅜㅜ

배열에 넣은 객체가 제대로 출력이 안되네요. 어느부분에서 잘못했는지 알려주실수 있으신가요?

?
  • ?
    황기태 2017.07.12 20:41

    하하, 사용자 객체 만들기, 배열 뭐 이런 것 처음하면 조금 어렵습니다.
    하나씩 설명해보겠습니다. 학생님이 작성한 코드에서 수정하면서 설명을 드리지요.

    1. 학생님은 bookArray 배열에 prompt()가 리턴하는 문자열을 배열에 저장해두려고 합니다. 그러면 이 코드는 문제 없습니다.
    for(i=0;i<5;i++){
    bookArray[i] = prompt("콤마(,)로 분리하면서 책제목 저자 가격 순으로 입력","");
    }

    2. 아래 코드는 책 정보를 하나 저장하기 위해 프로퍼티를 만드는 작업입니다. 좋습니다.
    그런데 set() 메소드를 작성하여 set()에서 사용자가 입력한 책의 각 속성을 book에 저장할 필요는 없습니다.
    var book = new Object();
    book.title = "HTML";
    book.author = "황기태";
    book.price = "20000";
    book.set=set;
    book.set(sp[0],sp[1],sp[2]);
    newArray[i] = book;

    이 코드는 다음과 같이 고치면 될 것 같습니다. 간단해 졌죠?
    var book = new Object();
    book.title = sp[0];
    book.author = sp[1];
    book.price = sp[2];
    newArray[i] = book;

    3. 그리고 다음 코드는 newArray에 저장해둔 book 객체를 모두 출력하려고 하였는데, 프로퍼티를 하나씩 출력하여야 합니다.
    for(i=0;i<5;i++){
    document.write(newArray[i] + "<br>");
    }

    이렇게 고치면 되지요.
    for(i=0;i<5;i++){
    document.write(newArray[i].title + ", ");
    document.write(newArray[i].author + ", ");
    document.write(newArray[i].price + "<br>");
    }

    제가 설명한대로 다시 붙여서 완성해보세요.
    나머지는 스스로 해결하세요.
    그럼


QnA

공부하면서 궁금했던 것을 질문해보세요.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 읽어주세요! 연습문제 및 실습문제 정답 공개에 관한 공지입니다. file 관리자 2017.06.20 18278
263 선생님 재질문 드립니다. 1 file 입문한 사람 2020.06.12 150
262 선 색 변경이 안됩니다 1 모르겠어요 2020.06.19 199
261 서버설치와 코드편집기 질문 드려요~ 1 TS2019 2019.10.26 131
260 살다 살다 답을 반쪽만 주는 책은 처음입니다 1 음음 2019.01.24 8847
259 비정형 표 질문 file ㅇㅇ 2020.04.08 193
258 비정형 표 만들기 다운로드 1 애치 2023.04.04 103
257 브라우저 크기 변경 1 열심히 공부하는 독자 2020.08.27 59
256 버튼 태그에 대해서 궁금한게 있습니다!! 1 아이디가뭐였지 2021.03.22 128
255 배경슬라이드가 뭔지 추가설명하겠습니다 2 hansung 2019.06.27 92
254 바닐라js 란 것에 대해 질문이 있습니다. 2 muuum 2018.11.01 546
253 몽구스 질문있습니다 ㅜㅜ 3 몽구스초보입니다 2019.01.10 1003
252 몽구스 질문드립니다. 2 서동 2018.02.26 259
251 몽구스 웹서버가 작동 안됩니다. 바울 2021.07.22 148
250 몽구스 웹서버가 뭔가요? 1 안녕하세요 2020.08.16 101
249 몽구스 서버 외부접속 질문드립니다. 1 명품프로그래머 2017.10.26 277
248 몽구스 관련 질문입니다. 1 류경선 2018.01.20 490
247 목록을 한줄로 나란하게 만드는 법 질문드립니다 3 file 입문한 사람 2020.04.04 260
246 명품 수정판 HTML5+ CSS3+ Javascript 웹 프로그래밍 p.74 메타 데이터 <meta> 문의 1 mikael 2021.05.06 113
245 명품 html5+css3책과 HTML의 차이가 궁금합니다 저자님 2 보안 2019.05.03 328
244 명품 html5+ 수정판 p.89 예제 2-21 파일 다운로드 링크 만들기 실행 오류 문의 1 file mikael 2021.04.15 202
목록
Board Pagination Prev 1 ... 3 4 5 6 7 8 9 10 11 12 ... 21 Next
/ 21
위로