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

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

배열이 정의되지 않음

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

분류에서Dev

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

Related 관련 기사

  1. 1

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

  2. 2

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

  3. 3

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

  4. 4

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

  5. 5

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

  6. 6

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

  7. 7

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

  8. 8

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

  9. 9

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

  10. 10

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

  11. 11

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

  12. 12

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

  13. 13

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

  14. 14

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

  15. 15

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

  16. 16

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

  17. 17

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

  18. 18

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

  19. 19

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

  20. 20

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

  21. 21

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

  22. 22

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

  23. 23

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

  24. 24

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

  25. 25

    배열이 정의되지 않음

  26. 26

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

  27. 27

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

  28. 28

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

  29. 29

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

뜨겁다태그

보관