質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
オブジェクト指向

オブジェクト指向プログラミング(Object-oriented programming;OOP)は「オブジェクト」を使用するプログラミングの概念です。オブジェクト指向プログラムは、カプセル化(情報隠蔽)とポリモーフィズム(多態性)で構成されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

1回答

203閲覧

【Javascript】オブジェクトリテラルで定義した関数が返した値がNaNになる

sasa0330

総合スコア64

オブジェクト指向

オブジェクト指向プログラミング(Object-oriented programming;OOP)は「オブジェクト」を使用するプログラミングの概念です。オブジェクト指向プログラムは、カプセル化(情報隠蔽)とポリモーフィズム(多態性)で構成されています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

0クリップ

投稿2019/07/13 09:22

編集2019/07/13 09:28

JavaScriptのオブジェクト指向について学習中ものです。
以下のコードで想定外の結果が返ってきてしまいました。

該当のソースコード

JavaScript

1 var Area = function(){}; 2 Area.prototype = { 3 version : 1, 4 triangle : function(base, height){ 5 return this.base * this.height/2; 6 }, 7 diamond : function(width,height){ 8 return this.width * this.height/2; 9 } 10 }; 11 12 var result = new Area(); 13 console.log(result.version); // 1 14 console.log('三角形:' + result.triangle(5, 3)); //三角形:NaN 15 console.log('菱形:' + result.diamond(10, 2)); //菱形:NaN 16 17```### 前提・実現したいこと 18 19###困っていること 20コンソールに結果を出力していますが、triangle関数とdiamond関数を呼び出すと結果がNaNで返ってきてしまいます。本来は計算結果を返して欲しかったのですが、計算内容を変えてみても現状NaNしか返ってきません。 21 22### 試したこと 23returnの計算式の部分を文字列を返すようにすると正常に値が返ってくるようです。 24例)return 'hogehoge';

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2019/07/13 09:25

コードはマークダウンのcode機能を利用してご提示ください
sasa0330

2019/07/13 09:30

ご指摘ありがとうございます。修正いたしました。 初投稿だったため、使い方をいまいち理解していませんでした。。
m.ts10806

2019/07/13 09:31

ヘルプはさらっとでも見ておくと良いですよ
sasa0330

2019/07/13 09:37

かしこまりました。 ありがとうございます!
guest

回答1

0

ベストアンサー

this.をつけなければいいのでは……?

投稿2019/07/13 09:25

Lhankor_Mhy

総合スコア35865

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

sasa0330

2019/07/13 09:35

ご回答ありがとうございます。 仰る通りでした...!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問