今回は関数というしくみの理解をさらに深めていきます。
1 関数をつくる
前回は単純な足し算、割り算を使った関数だったので独自の関数を作ってみます。
HTML(一部)
<script>
function calcArea(base, height){
let area = (base * height) / 2;
return area;
}
let a = 12;
let b = 24;
let c = calcArea(a, b);
document.write("<p>三角形の面積:" + c + "</p>");
</script>
ブラウザ
ありそうでなかった(?)三角形の面積を求める関数です。
2 関数の上書き
ここからは、関数のしくみやルールの紹介です。
HTML(一部)
<script>
function helloSan(name){
document.write("<p>" + name + "さん、こんちには。</p>");
}
a = "鈴木";
helloSan(a);
</script>
ブラウザ
これは関数 helloSan を定義して、その後に「鈴木」を代入した変数 a を引数として、その関数 helloSan を呼び出しています。
次に関数 helloSan を上書きしてみましょう。
HTML(一部)
<script>
function helloSan(name){
document.write("<p>" + name +"さん、こんちには。</p>");
}
function helloSan(name){
document.write("<p>こんにちは、" + name + "さん。</p>");
}
a = "鈴木";
helloSan(a);
</script>
ブラウザ
後から定義したものが適用されていることがわかると思います。
3 変数のスコープ
次はスコープ(有効な範囲)という考え方です。
HTML(一部)
<script>
let a = "関数の外側";
function display(){
let b = "関数の内側";
document.write("<p>" + a + "です。</p>");
document.write("<p>" + b + "です。</p>");
}
display();
document.write("<p>----------------</p>");
document.write("<p>" + a + "です。</p>");
document.write("<p>" + b + "です。</p>");
</script>
ブラウザ
注目したいのは、関数内と関数外に同じ記述があることです。
「document.write(“<p>” + a + “</p>”);」と「document.write(“<p>” + b + “</p>”);」の部分ですね。
しかし実行結果をみると、関数内の write メソッドは両方実行されて「関数の外側」「関数の内側」と表示されているのに対して、関数外の write メソッドは「関数の外側」という部分しか実行されていません。
HTML(一部)
<script>
function display(){
let b = "関数の内側";
document.write("<p>" + b + "です。</p>");
}
document.write("<p>" + b + "です。</p>");
</script>
分かりやすいように変数 b の部分のみを抜き書きしてみました。
見てわかるように、変数 b を利用できるのは関数内にある場合であり、関数の外にある場合は利用できないのです。
これがローカルスコープという考え方です。
そしてローカルスコープを持つ変数のことをローカル変数といいます。
HTML(一部)
<script>
let a = "関数の外側";
function display(){
document.write("<p>" + a + "です。</p>");
}
document.write("<p>" + a + "です。</p>");
</script>
ところが変数 a は関数の外に定義されています。
このような場合は、関数内であろうと外であろうと利用が可能となります。
これがグローバルスコープという考え方です。
そしてグローバルスコープを持つ変数のことをグローバル変数といい、これはプログラム全体で使用可能です。
4 次回
さて次回も引き続き「関数」です。
さらに関数の性質を理解していきましょう。
カテゴリー
更新記事
- 『日本経済新聞』を読む33(大豆、人工光合成、冷凍倉庫、新茶、豚肉、預金、タングステン)
- 「コンビニ」記事を読む6(モバイルオーダー、苦戦、からあげクン、デジタルサイネージ、回収、来店動機、抹茶アイス)
- 『日本経済新聞』を読む32(卵、リスキリング、目覚まし、消費税、個室、提供体制、消費二極化)
- 『読売新聞』(経済面)を読む1(レアアース、トラック、日本酒、ATM、軽、教養娯楽、保険)
- 「コンビニ」記事を読む5(試験販売、インド、災害支援、くすり、自動車、オーナー勉強会、小型店舗)
- 「コンビニ」記事を読む4(パウダースペース、冷凍おにぎり、年齢確認、売れ残り商品、コンテスト)
- 『日本経済新聞』を読む31(下落、同時安、海外旅行、AI銘柄、冷凍野菜)
- 商社株投資(およそ2年6か月)
- テーマ株投資(2年2か月)
- 2026年3月1日(日)自転車で 富山市、滑川市、魚津市
- テーマ株投資(1年3か月)
- 『サピエンス全史』を読む
- テーマ株投資(1年2か月)
- 「コンビニ」記事を読む3(ジョブ型)
- 「コンビニ」記事を読む2(EC)
- 「コンビニ」記事を読む1(お手頃)
- 『日本経済新聞』を読む30(LiDAR、木造ビル、客室単価、オリーブ、オルカン)
- 『日本経済新聞』を読む29(フェノール、自動運転、合成燃料、上履き、予備費)
- テーマ株投資(12か月)
- 『ウォール街のランダム・ウォーカー<原著第13版>』を読む 第4部
- 『ウォール街のランダム・ウォーカー<原著第13版>』を読む 第3部
- 『ウォール街のランダム・ウォーカー<原著第13版>』を読む 第2部
- 『ウォール街のランダム・ウォーカー<原著第13版>』を読む 第1部
- 『日本経済新聞』を読む28(しそ、SOX指数、体験型、オリーブ、クラフトビール)
- 『日本経済新聞』を読む27(ATM、Z世代、SSD、イチゴ、稲わら)
- 『日本経済新聞』を読む26(イワシ、合成ダイヤモンド、陸上養殖、希望退職、タコ)
- 『日本経済新聞』を読む25(モルドバ、スマートロック、バリ、二重価格、ニッチ)
- 『日本経済新聞』を読む24(FTS、焼酎、化粧水、防災ビジネス、一太郎)
- 『日本経済新聞』を読む23(人工芝、睡眠市場、東海道新幹線、地雷、酸化ガリウム)
- 『日本経済新聞』を読む22(ポータブル電源、ズワイガニ、モルディブ、リチウム、ロブスター)
タグ
break (1) class (3) collection (6) continue (1) CSS (2) DOM (2) for (1) function (3) HTML (8) if (2) JavaScript (28) object (5) pop (1) push (1) shift (1) switch (1) unshift (1) VBA (1) while (2) ことば (37) アンガーマネジメント (1) インソース (1) ココナラ (16) コンビニ (3) コーチング (1) チーズ (2) ネズミ (2) ノート (2) パーソル (1) パーソルホールディングス (7) ブランディング (1) ブランド (1) プログリット (1) ポート (1) メモ (2) リスキリング (1) リンクアンドモチベーション (7) 三井物産 (1) 三菱商事 (1) 丸紅 (1) 人類史 (1) 伊藤忠商事 (1) 住友商事 (1) 分散投資 (4) 変数 (3) 学習 (1) 小人 (2) 怒り (1) 折り畳み自転車 (1) 新聞 (2) 株式 (33) 株式投資 (4) 歴史 (1) 用語 (28) 睡眠 (3) 給水器 (1) 記憶 (3) 長期投資 (4) Aoba-BBT (16) IGS (16) Kラーニング (1)