2022年のJavaScriptコーディングインタビューのための重要な質問と回答例


  1. プリミティブ型とオブジェクト型の違いは何ですか?それぞれの例を示してください。

プリミティブ型は、数値、文字列、真偽値、null、undefinedなどの単純な値です。オブジェクト型は、複数のプロパティとメソッドを持つ複雑な値です。以下に例を示します。

// プリミティブ型の例
let number = 10;
let string = "Hello";
let boolean = true;
let nullValue = null;
let undefinedValue = undefined;
// オブジェクト型の例
let object = { name: "John", age: 25 };
let array = [1, 2, 3];
  1. 関数宣言と関数式の違いは何ですか?それぞれの例を示してください。

関数宣言は、functionキーワードを使用して関数を定義する方法です。関数式は、関数を変数に代入する方法です。以下に例を示します。

// 関数宣言の例
function sum(a, b) {
  return a + b;
}
// 関数式の例
const sum = function(a, b) {
  return a + b;
};
  1. クロージャとは何ですか?どのように使用されますか?例を示してください。

クロージャは、関数とその関数が定義された環境との組み合わせです。関数内の変数は、その関数内でのみアクセス可能ですが、クロージャを使用すると、関数外からその変数にアクセスできます。以下に例を示します。

function outer() {
  let count = 0;
  function inner() {
    count++;
    console.log(count);
  }
  return inner;
}
const closure = outer();
closure(); // 1
closure(); // 2
  1. コールバック関数とは何ですか?どのように使用されますか?例を示してください。

コールバック関数は、関数の引数として渡され、他の関数によって呼び出される関数です。主に非同期処理やイベントハンドリングなどに使用されます。以下に例を示します。

function fetchData(callback) {
  setTimeout(function() {
    const data = "Some data";
    callback(data);
  }, 1000);
}
function processData(data) {
  console.log("Processed data:", data);
}
fetchData(processData);

これらは、JavaScriptのコーディングインタビューでよく尋ねられる重要な質問のいくつかです。このような質問に対する理解と実際のコード例の準備をすることで、インタビューの成功を高めることができます。