SlideShare una empresa de Scribd logo
1 de 6
パートナーコース#2 Javascript

        (12) 関数




          ver.1.0       1
12-0.html ハッシュと配列
script
function hyoji(){
   var kazoku = [{"名前":"テントくん", "年齢":11},              配列kazokuの要素にハッ
          {"名前":"テントパパ", "年齢":36},
          {"名前":"テントママ", "年齢":36}];                    シュを入れています。
    var text = "テント家の家族構成<br>";
    for(var i = 0; i < kazoku.length; i++){
       var a = kazoku[i];
       text += a["名前"] + a["年齢"] + "歳" + "<br>";       変数aはkazokuの要素を取り
    }
    var output = document.getElementById("output");
                                                       出したものなのでハッシュ
    output.innerHTML = text;                           です。
}




                                             ver.1.0                    2
12-1.html 「長い」プログラム
script
function keisan(){
    var num1 = document.getElementById("num1").value;
    if(num1.length > 0){
                                                                      inputの”num1”に入力され
         num1 = Number(num1);
    }else{
                                                                      た文字を数字に変換しま
    }
         num1 = 0;
                                                                      す。何も入力されてなけ
    var num2 = document.getElementById("num2").value;
                                                                      れば0にします。
    if(num2.length > 0){
        num2 = Number(num2);
    }else{
        num2 = 0;
    }                                                                 同じ事をnum2とnum3にたい
    var num3 = document.getElementById("num3").value;
    if(num3.length > 0){
                                                                      して行なっています。
        num3 = Number(num3);
    }else{
        num3 = 0;
    }

    var kotae = num1 + num2 + num3;
    var answer_input = document.getElementById("answer");
    answer_input.value = kotae;
}



                                                                  ☆数字以外が入力されたときも0にな
                                                                  るようにしてみよう。数字以外かどう
                                                                  かの判定にはisNaN()を使います。
                                                            ver.1.0                       3
12-2.html 関数を使ったプログラ
script
                ム
function keisan(){
   var num1 = get_number("num1");                            いままで同じ事を繰り返
   var num2 = get_number("num2");
   var num3 = get_number("num3");                            していたのを、
                                                             get_numberとまとめるこ
    var kotae = num1 + num2 + num3;
    document.getElementById("answer").value = kotae;         とで短くなりました。
}

//フォームに入力された数字を取り出す関数
function get_number(input_id){
   var val = document.getElementById(input_id).value;
   if(val.length > 0){                                       inputのidを与えると、そこに
       val = Number(val);
   }else{                                                    入力された数字を取り出す関
   }
       val = 0;                                              数を定義しています。
   return val;
}




                                                         ☆数字以外が入力されたときも0にな
                                                         るようにしてみよう。

                                                   ver.1.0                       4
関数のしくみ
function 名前(引数「ひきすう」){
    命令1;
    命令2;
    命令3;
    return 返り値「かえりち」;
}
   関数のメリット
   ・同じことを何度も書かなくてすむ
   ・プログラムが読みやすくなる

            ver.1.0      5
12-3.html 関数を別ファイルにす
<head>
             る
<script src=“12-3.js”></script>
<script>                                                     <script src=“12-3.js”></script>
   function keisan(){
       var num1 = get_number("num1");                        という書き方で、12-3.jsという外
       var num2 = get_number("num2");                        部Javascriptファイルを読み込んで
       var num3 = get_number("num3");
                                                             います。
       var kotae = num1 + num2 + num3;
       document.getElementById("answer").value =
kotae;
   }
</script>


12-3.js
//フォームに入力された数字を取り出す関数
function get_number(input_id){
   var val = document.getElementById(input_id).value;
                                                              外部ファイルの12-3.jsに関数
   if(val.length > 0){                                        get_numbersが書いてあります。
       val = Number(val);
   }else{
       val = 0;
   }
   return val;
}




                                                   ver.1.0                                6

Más contenido relacionado

La actualidad más candente

Clojure programming-chapter-2
Clojure programming-chapter-2Clojure programming-chapter-2
Clojure programming-chapter-2Masao Kato
 
apg4b 4.05 ポインタ
apg4b 4.05 ポインタapg4b 4.05 ポインタ
apg4b 4.05 ポインタAPG4b
 
ぱっと見でわかるC++11
ぱっと見でわかるC++11ぱっと見でわかるC++11
ぱっと見でわかるC++11えぴ 福田
 
プログラムの実行順序
プログラムの実行順序プログラムの実行順序
プログラムの実行順序APG4b
 
End challenge Part1
End challenge Part1End challenge Part1
End challenge Part1hisa2
 
for文
for文for文
for文APG4b
 
while文
while文while文
while文APG4b
 
怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01nagachika t
 
プログラミング講座
プログラミング講座プログラミング講座
プログラミング講座Yu Yu
 
Java電卓勉強会資料
Java電卓勉強会資料Java電卓勉強会資料
Java電卓勉強会資料Toshio Ehara
 
第12回計算機構成
第12回計算機構成第12回計算機構成
第12回計算機構成眞樹 冨澤
 
Java初心者勉強会(2015/08/07)資料
Java初心者勉強会(2015/08/07)資料Java初心者勉強会(2015/08/07)資料
Java初心者勉強会(2015/08/07)資料Toshio Ehara
 
入力
入力入力
入力APG4b
 
第10回 計算機構成
第10回 計算機構成第10回 計算機構成
第10回 計算機構成眞樹 冨澤
 
Brief introduction of Boost.ICL
Brief introduction of Boost.ICLBrief introduction of Boost.ICL
Brief introduction of Boost.ICLyak1ex
 
Ekmett勉強会発表資料
Ekmett勉強会発表資料Ekmett勉強会発表資料
Ekmett勉強会発表資料時響 逢坂
 

La actualidad más candente (19)

全探索
全探索全探索
全探索
 
機械学習
機械学習機械学習
機械学習
 
Clojure programming-chapter-2
Clojure programming-chapter-2Clojure programming-chapter-2
Clojure programming-chapter-2
 
apg4b 4.05 ポインタ
apg4b 4.05 ポインタapg4b 4.05 ポインタ
apg4b 4.05 ポインタ
 
ぱっと見でわかるC++11
ぱっと見でわかるC++11ぱっと見でわかるC++11
ぱっと見でわかるC++11
 
プログラムの実行順序
プログラムの実行順序プログラムの実行順序
プログラムの実行順序
 
End challenge Part1
End challenge Part1End challenge Part1
End challenge Part1
 
for文
for文for文
for文
 
while文
while文while文
while文
 
怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01怠惰なRubyistへの道 fukuoka rubykaigi01
怠惰なRubyistへの道 fukuoka rubykaigi01
 
プログラミング講座
プログラミング講座プログラミング講座
プログラミング講座
 
Java電卓勉強会資料
Java電卓勉強会資料Java電卓勉強会資料
Java電卓勉強会資料
 
第12回計算機構成
第12回計算機構成第12回計算機構成
第12回計算機構成
 
Java初心者勉強会(2015/08/07)資料
Java初心者勉強会(2015/08/07)資料Java初心者勉強会(2015/08/07)資料
Java初心者勉強会(2015/08/07)資料
 
入力
入力入力
入力
 
第10回 計算機構成
第10回 計算機構成第10回 計算機構成
第10回 計算機構成
 
Brief introduction of Boost.ICL
Brief introduction of Boost.ICLBrief introduction of Boost.ICL
Brief introduction of Boost.ICL
 
Ekmett勉強会発表資料
Ekmett勉強会発表資料Ekmett勉強会発表資料
Ekmett勉強会発表資料
 
Emcjp item21
Emcjp item21Emcjp item21
Emcjp item21
 

Destacado (7)

Fisiologia de aparato masculino
Fisiologia de aparato masculinoFisiologia de aparato masculino
Fisiologia de aparato masculino
 
Aparato masculino
Aparato masculinoAparato masculino
Aparato masculino
 
Anatomia Fisiologia Aparato Masculino Femenino
Anatomia Fisiologia Aparato Masculino FemeninoAnatomia Fisiologia Aparato Masculino Femenino
Anatomia Fisiologia Aparato Masculino Femenino
 
Aparato masculino
Aparato masculinoAparato masculino
Aparato masculino
 
Aparato Reproductor Masculino
Aparato Reproductor MasculinoAparato Reproductor Masculino
Aparato Reproductor Masculino
 
Ovarios (presentacion)
Ovarios (presentacion)Ovarios (presentacion)
Ovarios (presentacion)
 
Ovarios
OvariosOvarios
Ovarios
 

Similar a 関数

ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和schoowebcampus
 
プログラミング言語Scala
プログラミング言語Scalaプログラミング言語Scala
プログラミング言語ScalaTanUkkii
 
HTMLの要素の選び方
HTMLの要素の選び方HTMLの要素の選び方
HTMLの要素の選び方TENTO_slide
 
Infer.netによるldaの実装
Infer.netによるldaの実装Infer.netによるldaの実装
Infer.netによるldaの実装池田 直哉
 
C# LINQ ~深く知って、使いまくろう~
C# LINQ ~深く知って、使いまくろう~C# LINQ ~深く知って、使いまくろう~
C# LINQ ~深く知って、使いまくろう~Fujio Kojima
 
新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・Rubyでやってみた新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・RubyでやってみたTomoaki Ueda
 

Similar a 関数 (10)

ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
ノンプログラマーでも明日から使えるJavaScript簡単プログラム 先生:柳井 政和
 
前期講座09
前期講座09前期講座09
前期講座09
 
C# LINQ入門
C# LINQ入門C# LINQ入門
C# LINQ入門
 
プログラミング言語Scala
プログラミング言語Scalaプログラミング言語Scala
プログラミング言語Scala
 
HTMLの要素の選び方
HTMLの要素の選び方HTMLの要素の選び方
HTMLの要素の選び方
 
Infer.netによるldaの実装
Infer.netによるldaの実装Infer.netによるldaの実装
Infer.netによるldaの実装
 
C# LINQ ~深く知って、使いまくろう~
C# LINQ ~深く知って、使いまくろう~C# LINQ ~深く知って、使いまくろう~
C# LINQ ~深く知って、使いまくろう~
 
Q13
Q13Q13
Q13
 
新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・Rubyでやってみた新しくプログラミング言語・・・Rubyでやってみた
新しくプログラミング言語・・・Rubyでやってみた
 
MapReduce入門
MapReduce入門MapReduce入門
MapReduce入門
 

Más de TENTO_slide

グローバル変数
グローバル変数グローバル変数
グローバル変数TENTO_slide
 
ハッシュと配列
ハッシュと配列ハッシュと配列
ハッシュと配列TENTO_slide
 
ループその3
ループその3ループその3
ループその3TENTO_slide
 
ループその2
ループその2ループその2
ループその2TENTO_slide
 
デザイン型人材育成のために
デザイン型人材育成のためにデザイン型人材育成のために
デザイン型人材育成のためにTENTO_slide
 
2012ー1 TENTOプレゼン資料
2012ー1 TENTOプレゼン資料2012ー1 TENTOプレゼン資料
2012ー1 TENTOプレゼン資料TENTO_slide
 

Más de TENTO_slide (12)

タイマー
タイマータイマー
タイマー
 
イベント
イベントイベント
イベント
 
復習その2
復習その2復習その2
復習その2
 
グローバル変数
グローバル変数グローバル変数
グローバル変数
 
ハッシュと配列
ハッシュと配列ハッシュと配列
ハッシュと配列
 
ループその3
ループその3ループその3
ループその3
 
ループその2
ループその2ループその2
ループその2
 
デザイン型人材育成のために
デザイン型人材育成のためにデザイン型人材育成のために
デザイン型人材育成のために
 
Html03
Html03Html03
Html03
 
Html02
Html02Html02
Html02
 
Html01
Html01Html01
Html01
 
2012ー1 TENTOプレゼン資料
2012ー1 TENTOプレゼン資料2012ー1 TENTOプレゼン資料
2012ー1 TENTOプレゼン資料
 

Último

TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationYukiTerazawa
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptyuitoakatsukijp
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ssusere0a682
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2Tokyo Institute of Technology
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024koheioishi1
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfyukisuga3
 

Último (6)

TokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentationTokyoTechGraduateExaminationPresentation
TokyoTechGraduateExaminationPresentation
 
UniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScriptUniProject Workshop Make a Discord Bot with JavaScript
UniProject Workshop Make a Discord Bot with JavaScript
 
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
ゲーム理論 BASIC 演習105 -n人囚人のジレンマモデル- #ゲーム理論 #gametheory #数学
 
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
東京工業大学 環境・社会理工学院 建築学系 大学院入学入試・進学説明会2024_v2
 
The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024The_Five_Books_Overview_Presentation_2024
The_Five_Books_Overview_Presentation_2024
 
TEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdfTEAMIN Service overview for customer_20240422.pdf
TEAMIN Service overview for customer_20240422.pdf
 

関数

  • 2. 12-0.html ハッシュと配列 script function hyoji(){ var kazoku = [{"名前":"テントくん", "年齢":11}, 配列kazokuの要素にハッ {"名前":"テントパパ", "年齢":36}, {"名前":"テントママ", "年齢":36}]; シュを入れています。 var text = "テント家の家族構成<br>"; for(var i = 0; i < kazoku.length; i++){ var a = kazoku[i]; text += a["名前"] + a["年齢"] + "歳" + "<br>"; 変数aはkazokuの要素を取り } var output = document.getElementById("output"); 出したものなのでハッシュ output.innerHTML = text; です。 } ver.1.0 2
  • 3. 12-1.html 「長い」プログラム script function keisan(){ var num1 = document.getElementById("num1").value; if(num1.length > 0){ inputの”num1”に入力され num1 = Number(num1); }else{ た文字を数字に変換しま } num1 = 0; す。何も入力されてなけ var num2 = document.getElementById("num2").value; れば0にします。 if(num2.length > 0){ num2 = Number(num2); }else{ num2 = 0; } 同じ事をnum2とnum3にたい var num3 = document.getElementById("num3").value; if(num3.length > 0){ して行なっています。 num3 = Number(num3); }else{ num3 = 0; } var kotae = num1 + num2 + num3; var answer_input = document.getElementById("answer"); answer_input.value = kotae; } ☆数字以外が入力されたときも0にな るようにしてみよう。数字以外かどう かの判定にはisNaN()を使います。 ver.1.0 3
  • 4. 12-2.html 関数を使ったプログラ script ム function keisan(){ var num1 = get_number("num1"); いままで同じ事を繰り返 var num2 = get_number("num2"); var num3 = get_number("num3"); していたのを、 get_numberとまとめるこ var kotae = num1 + num2 + num3; document.getElementById("answer").value = kotae; とで短くなりました。 } //フォームに入力された数字を取り出す関数 function get_number(input_id){ var val = document.getElementById(input_id).value; if(val.length > 0){ inputのidを与えると、そこに val = Number(val); }else{ 入力された数字を取り出す関 } val = 0; 数を定義しています。 return val; } ☆数字以外が入力されたときも0にな るようにしてみよう。 ver.1.0 4
  • 5. 関数のしくみ function 名前(引数「ひきすう」){ 命令1; 命令2; 命令3; return 返り値「かえりち」; } 関数のメリット ・同じことを何度も書かなくてすむ ・プログラムが読みやすくなる ver.1.0 5
  • 6. 12-3.html 関数を別ファイルにす <head> る <script src=“12-3.js”></script> <script> <script src=“12-3.js”></script> function keisan(){ var num1 = get_number("num1"); という書き方で、12-3.jsという外 var num2 = get_number("num2"); 部Javascriptファイルを読み込んで var num3 = get_number("num3"); います。 var kotae = num1 + num2 + num3; document.getElementById("answer").value = kotae; } </script> 12-3.js //フォームに入力された数字を取り出す関数 function get_number(input_id){ var val = document.getElementById(input_id).value; 外部ファイルの12-3.jsに関数 if(val.length > 0){ get_numbersが書いてあります。 val = Number(val); }else{ val = 0; } return val; } ver.1.0 6