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

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

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

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

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

Q&A

解決済

4回答

4629閲覧

「40未満の数値がいくつあるか」を表示するプログラム

SHIGENAGI0914

総合スコア14

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

JavaScript

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

0グッド

0クリップ

投稿2017/05/02 06:12

編集2017/05/02 07:47

###前提・実現したいこと
複数の数値が定義されている配列dataから、「各数値」と「40未満の数値の個数」を表示するプログラムを作成しています。各数値は表示できるのですが、「40未満の数値の個数」を表示することができません。
私が書いたソースだと個数ではなく40未満の数字そのものが出てきてしまいます。
どのようにソースを書いたら表示できるのでしょうか?
ソースの改善点・参考を教えて下さるとうれしいです。よろしくお願い致します。
###該当のソースコード

<!DOCTYPE html> <html lang="ja"> <head> <meta charset="UTF-8"> <title>課題</title> <script> var data = [59, 39, 100, 2, 15, 40, 84, 97]; for(var i = 0;i<data.length;i++) { document.write(data[i]+'<br>'); } var count=0; for(var j= 0;j<data.length;j++) { if(data[j]<40) { document.write(data[j]+'<br>'); count++; } } document.write(count); </script> </head> <body> </body> </html>

###発生している問題・エラーメッセージ

59 39 100 2 15 40 84 97 39 2 15 3

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

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

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

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

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

kei344

2017/05/02 06:19

「表示することができません」とは「何をしたときに」「どうなると思って」「どうなったのか」を、出ているエラーなどと併せて、具体的に記述されたほうが回答を得られやすいと思います。
guest

回答4

0

document.writeはページ全体に影響があるので
表示するだけならconsole.logを利用して下さい
※最近のブラウザのF12を押すと開発ツールが表示されます

javascript

1var data = [59, 39, 100, 2, 15, 40, 84, 97]; 2console.log(data.filter(function(i){return (i<40);}).length) 3

投稿2017/05/02 06:23

yambejp

総合スコア114812

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

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

0

表示できているように見えます。

分からない部分を具体化すると良いと思います。
「わかりません。教えてください。」は丸投げと同じです。

Re: SHIGENAGI0914 さん

投稿2017/05/02 06:25

think49

総合スコア18162

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

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

0

js

1for(var i = 0;i<data.length;i++) { 2 document.write(data[i]+'<br>'); //① 配列データの表示 3} 4var count=0; 5for(var j= 0;j<data.length;j++) { 6 if(data[j]<40) { 7 document.write(data[j]+'<br>'); //② 40未満の配列データの表示 8 count++; 9 } 10} 11document.write(count); //③ 40未満の数値の個数表示

それぞれのコードが何をしているか、ですが
きちんと「40未満の数値の個数」も正しく表示されています。
あとは必要ない部分を切り落としてまとめられるところはまとめるだけだと思います。

投稿2017/05/02 08:05

編集2017/05/02 08:06
ao_love

総合スコア441

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

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

0

ベストアンサー

if(data[j]<40) {のあとのwriteいらない。

投稿2017/05/02 08:02

toutou

総合スコア2050

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

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

SHIGENAGI0914

2017/05/02 08:08

ありがとうございます!解決しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問