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

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

新規登録して質問してみよう
ただいま回答率
85.50%
JavaScript

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

Q&A

解決済

3回答

9628閲覧

console.logとreturnの違いとは?

masaakitsuyoshi

総合スコア102

JavaScript

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

0グッド

2クリップ

投稿2016/02/23 06:28

console.log と return の違いはどのようなものでしょうか?

JSを始めたばかりの初心者で、
色々なサイトを見ましたが抽象的すぎていまひとつピンと来ません。

ーーーーー
console.log はその名の通り、 値を入力するもの、
return はその名の通り、 値をそのまま返すもの、

なので、値が一緒の場合、挙動は一緒になる、

というぼんやりした理解です。
ーーーーーー

具体的にどのような時使うのか、(例 マップアプリのこんなシチュエーション)
こんな時にはconsole.logがよい、いやいやreturnがよい、

など例を挙げてもらえたら嬉しいです。

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

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

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

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

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

unarist

2016/02/23 06:32 編集

それらは全く異なる機能の関数で、挙動が一緒になるとは思えないのですが、例えばどんな使い方をすると同じ挙動になるのか、プログラムの例を挙げていただけませんか?
guest

回答3

0

ベストアンサー

console.log はその名の通り、 値を入力するもの、
return はその名の通り、 値をそのまま返すもの、

なので、値が一緒の場合、挙動は一緒になる、

console.logreturnは全く違うものです。

console関数は、コンソール画面に値(変数の中身など)を出力し、確認するためのものです。
http://javascriptist.net/docs/console_log.html
http://qiita.com/nakajmg/items/0a27c6642268243c8eef
https://developer.mozilla.org/ja/docs/Web/API/Console/log
あくまでデバッグ用の関数です。

returnは、
・処理した結果の値を返す
・処理を中止して、その処理を抜ける
といった動作です。
http://www.ajaxtower.jp/js/function/index4.html
http://oshiete.goo.ne.jp/qa/7303126.html

また、console関数には
console.log()
console.info()
console.warn()
等もあります。

投稿2016/02/23 07:03

編集2016/02/23 07:04
ikki57

総合スコア290

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

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

masaakitsuyoshi

2016/02/23 07:21

文字列を出力するときに使うもの、 console.logとreturnしか知らなかったもので、 どちらも結果が同じだから同じじゃないか?と思ってたんですが 用途が違うんですね。 なんとなくわかりました。
guest

0

ひょっとして、コンソールでコードを実行しているのでしょうか。

JavaScript

1function sample () { return 1; } 2sample(); // 1 3 4console.log(1); // 1 -> undefined

コンソールでコードを実行すると評価値が出力される為、関数の返り値を出力できます。
コンソールで console.log(1); を実行した場合、まず console.log(1); が実行されて 1 が出力され、その後に console.log(1); の評価値である undefined が出力されます(従って、2行出力されるはずです)。

コンソールでコードを叩く場合に console.log() を呼び出すのは無駄なので 1 だけ入力して [Enter] キーを叩いてください。
それだけで 1 の評価値である 1 が出力されます。

JavaScript

11; // 1

Re: masaakitsuyoshi さん

投稿2016/02/23 07:23

think49

総合スコア18156

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

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

masaakitsuyoshi

2016/02/23 07:36

console.log(1); // 1 -> undefined これってなんで undefined になるんでしょう? 1 なので整数として出力されるんじゃないのでしょうか。 学習サイトでjavascriptを書いていたので、それがコンソールというやつなのでしょうか。 学習サイト(codecademy)では 出力する際に console.logが出てきたので、returnとの違いを疑問に持ちました。
think49

2016/02/23 07:38

console.log(1); の返り値が undefined だからです。
guest

0

console.logはその名の通り、コンソールにログを出力します。
(Chromeなどのブラウザで開発者ツールでコンソールに出力されます。)

returnは、実行元に処理を戻します。
(例えば、a = b.getString()という関数があって、
bのgetString内が return "aaa";となっていたら
aには"aaa"が代入されて次の処理に移ります。)

使い方から意味まで全く違うと思います。
挙動が一緒になるとは思えませんが、挙動が一緒になる例を教えてください。

投稿2016/02/23 06:52

hato_pato

総合スコア215

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問