OOP를 사용할 때 문자열 옆에 "정의되지 않음"이있는 이유는 무엇입니까?

FruDe

나는 현재 요리 레시피를 표시하기 위해 OOP를 사용하고 있습니다. 내가 document.write방법을 사용할 때를 제외하고는 모든 것이 좋습니다 . 을 표시 할 때 텍스트는 "$ 2.00undefined"및 "$ 6.00undefined"로 표시 price됩니다. 내 코드는 다음과 같습니다.

<html>
    <body>
    <p id = "p"></p>
<script>
function Recipe(name, ingredients, price) {
    this.name = name;
    this.ingredients = ingredients;
    this.price = price;
}

function describe(name, ingredients, price) {
    document.write("<h2> Recipe name: " + name + "</h2> Ingredients: " + ingredients + "<br  />Price: " + price);
}

var instantRamen = new Recipe("Ramen", "Ramen noodles, hot water, salt, (optional) green pepper", "$2.00");
var Bagel = new Recipe("Ham and cheese bagel", "Bagel (preferably an everything bagel), ham, cheese (of any type), pepper (just a little)", "$6.00");

document.write(describe(instantRamen.name, instantRamen.ingredients, instantRamen.price));
document.write(describe(Bagel.name, Bagel.ingredients, Bagel.price));
</script>
</body>
</html>

예상되는 결과는 "레시피 이름 :라면 (줄 바꿈) 재료 :라면, 뜨거운 물, 소금, (선택 사항) 피망 (줄 바꿈) 가격 : $ 2.00"과 같지만 가격은 "$ 2.00 undefined"가됩니다. 다른 모든 것이 작동합니다.

원래 instantRamenBagel인스턴스를 만들 때 문제가 있다고 생각했기 때문에 일부 구문을 아무 소용없이 변경해 보았습니다.

xMayank

당신은 이렇게 할 수 있습니다 return.

값을 반환하지 않기 때문입니다. Thatsyundefined

function Recipe(name, ingredients, price) {
    this.name = name;
    this.ingredients = ingredients;
    this.price = price;
}

function describe(name, ingredients, price) {
    return "<h2> Recipe name: " + name + "</h2> Ingredients: " + ingredients + "<br  />Price: " + price;
}

var instantRamen = new Recipe("Ramen", "Ramen noodles, hot water, salt, (optional) green pepper", "$2.00");
var Bagel = new Recipe("Ham and cheese bagel", "Bagel (preferably an everything bagel), ham, cheese (of any type), pepper (just a little)", "$6.00");

document.write(describe(instantRamen.name, instantRamen.ingredients, instantRamen.price));
document.write(describe(Bagel.name, Bagel.ingredients, Bagel.price));
<html>
    <body>
    <p id = "p"></p>
</body>
</html>

나는 제거한 document.writereturn문자열.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

변수를 정의되지 않음과 비교할 때 "변수 정의되지 않음"오류가 발생하는 이유는 무엇입니까?

분류에서Dev

Svelte를 사용하여 상점에서 배열을 업데이트 할 때 정의되지 않음

분류에서Dev

두 배열 사이를 전달할 때 값이 정의되지 않음

분류에서Dev

개체에 데이터를 추가 할 때 개체가 '정의되지 않음'일 수 있습니다 .ts (2532)

분류에서Dev

ExpressJs 경로에서 'req.params.id'를 확인할 때 '정의되지 않음'이 발생했습니다.

분류에서Dev

Jquery를 사용하여 테이블에서 데이터를 검색 할 때 정의되지 않음

분류에서Dev

푸시가 각도 2 ts를 사용할 때 값이 정의되지 않음

분류에서Dev

사용자의 이메일에 액세스 할 수 없습니다. "정의되지 않음"얻기

분류에서Dev

$ refs가 정의되지 않음-문제를 참조하는 사용자 정의 파일 입력 단추

분류에서Dev

AJAX 소스를 사용할 때 자동 완성 기능이 드롭 다운을 '정의되지 않음'으로 채 웁니다.

분류에서Dev

require.js가 Three.js를로드 할 때 THREE는 '정의되지 않음'입니다 (revision = 80).

분류에서Dev

Docusaurus v2를 GitHub 페이지에 배포 할 때 Travis CI에 Jest가 정의되지 않음

분류에서Dev

Docusaurus v2를 GitHub 페이지에 배포 할 때 Travis CI에 Jest가 정의되지 않음

분류에서Dev

<목록>의 데이터를 <편집> 할 때 저장소에 정의되지 않음

분류에서Dev

json 데이터 (ajax)에 액세스하려고 할 때 정의되지 않음

분류에서Dev

기능에서이 객체를 사용하면 Javascript TypeError (정의되지 않음)가 발생하는 이유는 무엇입니까?

분류에서Dev

사용자 입력시 Python3 Tkinter 이름 오류 (정의되지 않음)

분류에서Dev

"루트 파일 시스템이 정의되지 않음"으로 USB 드라이브에 Ubuntu를 설치할 때 문제 발생

분류에서Dev

.winfo_exists (tkinter)를 사용할 때 정의되지 않음 오류가 발생하는 이유

분류에서Dev

Jest : 기능이 아니기 때문에 속성을 감시 할 수 없습니다. 대신 주어진 정의되지 않음

분류에서Dev

"컴파일 오류 사용자 정의 유형이 정의되지 않음"이란 무엇입니까?

분류에서Dev

나중에 user_choice를 "정의되지 않음"으로 사용할 수없는 이유를 이해할 수 없습니다.

분류에서Dev

TypeError Passport JS 사용자 이름 속성 정의되지 않음

분류에서Dev

기록 된 사용자의 세션이 정의되지 않음

분류에서Dev

SherlockFragment에서 사용자 지정 어댑터가있는 ListView, 생성자가 정의되지 않음 (이를 전달할 수 없음)

분류에서Dev

Jest : 기능이 아니기 때문에 속성을 감시 할 수 없습니다. 내 테스트 케이스를 실행하는 동안 오류가 발생하는 대신 정의되지 않음

분류에서Dev

find ()에 의해 반환 된 일치 (정의되지 않음)를 처리하는 방법은 무엇입니까?

분류에서Dev

getElementsByClassName이 "정의되지 않음"오류를 생성합니다.

분류에서Dev

배열이 정의되지 않음

Related 관련 기사

  1. 1

    변수를 정의되지 않음과 비교할 때 "변수 정의되지 않음"오류가 발생하는 이유는 무엇입니까?

  2. 2

    Svelte를 사용하여 상점에서 배열을 업데이트 할 때 정의되지 않음

  3. 3

    두 배열 사이를 전달할 때 값이 정의되지 않음

  4. 4

    개체에 데이터를 추가 할 때 개체가 '정의되지 않음'일 수 있습니다 .ts (2532)

  5. 5

    ExpressJs 경로에서 'req.params.id'를 확인할 때 '정의되지 않음'이 발생했습니다.

  6. 6

    Jquery를 사용하여 테이블에서 데이터를 검색 할 때 정의되지 않음

  7. 7

    푸시가 각도 2 ts를 사용할 때 값이 정의되지 않음

  8. 8

    사용자의 이메일에 액세스 할 수 없습니다. "정의되지 않음"얻기

  9. 9

    $ refs가 정의되지 않음-문제를 참조하는 사용자 정의 파일 입력 단추

  10. 10

    AJAX 소스를 사용할 때 자동 완성 기능이 드롭 다운을 '정의되지 않음'으로 채 웁니다.

  11. 11

    require.js가 Three.js를로드 할 때 THREE는 '정의되지 않음'입니다 (revision = 80).

  12. 12

    Docusaurus v2를 GitHub 페이지에 배포 할 때 Travis CI에 Jest가 정의되지 않음

  13. 13

    Docusaurus v2를 GitHub 페이지에 배포 할 때 Travis CI에 Jest가 정의되지 않음

  14. 14

    <목록>의 데이터를 <편집> 할 때 저장소에 정의되지 않음

  15. 15

    json 데이터 (ajax)에 액세스하려고 할 때 정의되지 않음

  16. 16

    기능에서이 객체를 사용하면 Javascript TypeError (정의되지 않음)가 발생하는 이유는 무엇입니까?

  17. 17

    사용자 입력시 Python3 Tkinter 이름 오류 (정의되지 않음)

  18. 18

    "루트 파일 시스템이 정의되지 않음"으로 USB 드라이브에 Ubuntu를 설치할 때 문제 발생

  19. 19

    .winfo_exists (tkinter)를 사용할 때 정의되지 않음 오류가 발생하는 이유

  20. 20

    Jest : 기능이 아니기 때문에 속성을 감시 할 수 없습니다. 대신 주어진 정의되지 않음

  21. 21

    "컴파일 오류 사용자 정의 유형이 정의되지 않음"이란 무엇입니까?

  22. 22

    나중에 user_choice를 "정의되지 않음"으로 사용할 수없는 이유를 이해할 수 없습니다.

  23. 23

    TypeError Passport JS 사용자 이름 속성 정의되지 않음

  24. 24

    기록 된 사용자의 세션이 정의되지 않음

  25. 25

    SherlockFragment에서 사용자 지정 어댑터가있는 ListView, 생성자가 정의되지 않음 (이를 전달할 수 없음)

  26. 26

    Jest : 기능이 아니기 때문에 속성을 감시 할 수 없습니다. 내 테스트 케이스를 실행하는 동안 오류가 발생하는 대신 정의되지 않음

  27. 27

    find ()에 의해 반환 된 일치 (정의되지 않음)를 처리하는 방법은 무엇입니까?

  28. 28

    getElementsByClassName이 "정의되지 않음"오류를 생성합니다.

  29. 29

    배열이 정의되지 않음

뜨겁다태그

보관