메뉴 건너뛰기

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 18273
42 7장 실습문제 1번 질문 있습니다. 7 jonjsin 2017.11.09 602
41 7장에 실습문제 4번 질문 1 asd123 2017.11.05 1634
40 몽구스 서버 외부접속 질문드립니다. 1 명품프로그래머 2017.10.26 277
39 예제 5-11을 하다 사소한 궁금한 것이 생겼습니다 1 수소방울 2017.10.13 167
38 실습문제 홀수번 정답 ㅁㅁ 2017.09.24 635
37 예제에 나오는 이미지와 동영상파일은 어디서 다운받을 수 있나요... 1 gofkdvjvl 2017.09.21 215
36 6장 실습문제 짝수 답좀 알려주실분? 제발요  도움 2017.09.18 1105
35 예제에 필요한 그림이나 동영상 같은 자료파일은? 1 donghee 2017.09.15 130
34 연습문제 8장 이론문제 2번 답을 알고 싶습니다. 1 khe 2017.08.18 813
» 7장 10번문제 1 학섕 2017.07.12 1868
32 안녕하세요 처음하는 사람입니다 교재 구입하였습니다 2 성현군 2017.06.29 330
31 07장 10번 답좀 알고싶습니다... 2 abcd 2017.06.11 1088
30 4장 8번 문제 질문드려요! 1 file safd 2017.06.09 683
29 9장 4번 질문있습니다. 웹프로그래밍 2017.05.28 551
28 9장 2번 질문있습니다. 웹프로그래밍 2017.05.28 1136
27 8장의 10번 문제 질문 있습니다. 웸프로그래밍 2017.05.28 625
26 9장 오픈챌린지 답이 너무 궁금합니다. 1 범이 2017.05.10 1253
25 오랜만에 찾아 뵙습니다.. 3 은성 2017.05.10 338
24 실습문제 7장에 8번 질문 1 abcd 2017.05.09 994
목록
Board Pagination Prev 1 ... 12 13 14 15 16 17 18 19 20 ... 21 Next
/ 21
위로