【初心者向け】JavaScript関数入門|使い方・書き方を丁寧に紹介

JavaScript基礎

JavaScriptにおける関数(function)とは、「ひとまとまりの処理」をまとめて名前をつけたものです。
たとえば「画面に文字を表示する処理」や「数字を足し算する処理」などを、何度でも使えるように箱に入れておくようなイメージです。

日常生活にたとえると?

関数は「料理のレシピ」に似ています。
たとえば「目玉焼きを作るレシピ」があったとしたら、それを何回でも使って目玉焼きを作ることができますよね。

目玉焼きレシピ(関数)
→ フライパンを熱する
→ 卵を割る
→ 焼く
→ 完成!


JavaScriptでもこれと同じように「処理の手順」を関数としてまとめておけば、必要なときに呼び出して使えます。

なぜ関数を使うの?

関数を使う理由は次のようなメリットがあるからです:

  • 同じ処理を何度も使い回せる(再利用性)
  • コードが読みやすく、整理しやすい(可読性)
  • 名前をつけて分かりやすくできる(意味づけ)

次のセクションでは、実際に関数をどのように書くのか、コードを交えて紹介していきます。

JavaScriptで関数を作るときは、functionキーワードを使います。
以下が基本的な形です:

function 関数名() {
  // 実行したい処理
}

文字を表示する関数

function hello() {
  console.log("こんにちは!");
}

この関数 hello() は、呼び出すとコンソールに「こんにちは!」と表示します。

hello(); // => こんにちは!

引数つき関数の書き方

引数(ひきすう)は、関数に「情報を渡すための箱」です。

function greet(name) {
  console.log("こんにちは、" + name + "さん!");
}

greet("さくら"); // => こんにちは、さくらさん!

戻り値(return)を使う関数

関数で計算した結果などを「戻す(返す)」ことができます。

function add(a, b) {
  return a + b;
}

let result = add(3, 5);
console.log(result); // => 8

returnを使うことで、関数の外に結果を渡せるようになります。

【補足】関数名のルール

  • 英語で意味のある名前にするのがベター(例:calculateTotal など)
  • 1文字目は英字(数字や記号では始められない)
  • キャメルケース(例:sayHello)が一般的

関数を作っただけでは、プログラムは何も実行しません。
関数は「呼び出す(=実行する)」ことで、初めてその中の処理が動きます。

基本の呼び出し方

function hello() {
  console.log("こんにちは!");
}

// 関数の呼び出し
hello(); // => こんにちは!

関数名のあとに () をつけることで、関数を「実行」します。
これを関数の呼び出しといいます。

引数を使った呼び出し

関数に引数がある場合は、() の中に値を入れて渡します。

function greet(name) {
  console.log("こんにちは、" + name + "さん!");
}

greet("たろう"); // => こんにちは、たろうさん!
greet("さくら"); // => こんにちは、さくらさん!

name という引数にそれぞれ違う名前が渡され、その名前を使って挨拶が変わります。

戻り値を受け取って使う

return を使って値を返す関数は、呼び出した側で結果を受け取って利用できます。

function add(a, b) {
  return a + b;
}

let sum = add(10, 20);
console.log(sum); // => 30

このように、関数の結果を変数に代入したり、他の処理に使うことができます。

関数は「作る」と「呼び出す」がセットになってはじめて意味を持ちます。
次は、関数を変数に代入する方法(関数式)について解説します。

関数は、function を使って「名前をつけて定義」するだけでなく、変数に代入することもできます。この書き方を「関数式(function expression)」と呼びます。

無名関数(名前なしの関数)を変数に代入する

const hello = function() {
  console.log("こんにちは!");
};

hello(); // => こんにちは!

このように、function() には名前をつけず、関数そのものを変数 hello に代入しています。
constlet を使って関数を作ることで、関数も「値」として扱えるようになります。

引数・戻り値も普通の関数と同じように使える

const add = function(a, b) {
  return a + b;
};

console.log(add(3, 7)); // => 10

動作は「普通の関数定義」と同じですが、関数を値として変数に持たせているのが特徴です。

アロー関数(arrow function)という短い書き方

関数式はさらに短く書くこともできます。それがアロー関数です(=> を使う書き方)。

const hello = () => {
  console.log("こんにちは!");
};

hello(); // => こんにちは!

次は、初心者がハマりやすいポイント(関数の呼び出しミスやスコープの話)に軽く触れてみましょう。

関数はとても便利ですが、最初のうちは「どうしてうまく動かないの?」ということも起こりがちです。ここでは初心者がよくつまづくポイントを2つ紹介します。

5.1 関数を「呼び出す」と「参照する」の違い

function hello() {
  console.log("こんにちは!");
}

hello;   // 実行されない
hello(); // 実行される(=> こんにちは!)
  • hello ← これは「関数の中身を参照している」だけ。実行はされません
  • hello()() があることで、関数が実行されます。

🔸 関数を使いたいときは、必ず () をつけて呼び出す ようにしましょう。

5.2 変数のスコープ(どこまで見えるか)

関数の中で定義した変数は、その関数の中でしか使えません。これを「スコープ(scope)」といいます。

function showMessage() {
  let message = "やっほー";
  console.log(message);
}

showMessage(); // => やっほー

console.log(message); // ❌ エラー! message は外から見えない

🔸 letconst で作った変数は、ブロック(関数や{}の中)ごとに限定されるので注意!

5.3 補足:関数の中から外の変数は見える?

逆に、関数の中から外の変数は使うことができます

let greeting = "こんにちは";

function greetUser(name) {
  console.log(greeting + "、" + name + "さん!");
}

greetUser("サクラ"); // => こんにちは、サクラさん!

このあたりを理解しておくと、エラーやバグを防げるようになります!

今回はJavaScriptの「関数」について、初心者向けに基本から丁寧に紹介しました。

おさらいポイント

  • 関数は「ひとまとまりの処理」に名前をつけたもの
  • function 関数名() の形で定義できる
  • 引数や戻り値を使うと、より柔軟に使える
  • 関数は「呼び出す(実行)」ことで動く
  • 関数は変数に代入して使うこともできる(関数式・アロー関数)
  • () のつけ忘れやスコープのルールには注意!

関数の使い方を覚えたら、次は「イベント」と組み合わせることで、もっと実践的な動きを作れるようになります!

たとえば:

  • ボタンをクリックしたときに関数を実行する
  • 入力フォームに文字が入ったら関数でチェックする
  • ページが読み込まれたときに関数を動かす など

「関数」はJavaScriptの基本中の基本ですが、しっかり身につけると一気にレベルアップできます。
まずは簡単な関数をたくさん書いてみて、感覚をつかんでいきましょう!

コメント

タイトルとURLをコピーしました