中級
STAGE 1
110問目 • 10
  • Q1

    オブジェクトとは何ですか?

    ANSWER
    プロパティ(キーと値のペア)をまとめたデータ構造
    クリックして解説を表示
    EXPLANATION

    オブジェクトは「プロパティ(キーと値のペア)をまとめたデータ構造」です。関連するデータや機能を一つにまとめて管理できます。

  • Q2

    オブジェクトを作成する正しい書き方はどれですか?

    ANSWER
    let obj = {name: "太郎"};
    クリックして解説を表示
    EXPLANATION

    オブジェクトは波括弧{}で囲み、キー: 値の形式でプロパティを定義します。

  • Q3

    次のコードを実行すると何が表示されますか?

    const person = { name: "太郎", age: 25 };
    console.log(person.name);
    ANSWER
    太郎
    クリックして解説を表示
    EXPLANATION

    ドット記法(オブジェクト.プロパティ名)でプロパティの値にアクセスできます。person.nameは「太郎」です。

  • Q4

    オブジェクトのプロパティにアクセスする方法として正しいものはどれですか?

    ANSWER
    ドット記法とブラケット記法の両方
    クリックして解説を表示
    EXPLANATION

    オブジェクトのプロパティには、ドット記法(obj.key)またはブラケット記法(obj["key"])でアクセスできます。

  • Q5

    次のコードを実行すると何が表示されますか?

    const obj = { "my-key": "value" };
    console.log(obj["my-key"]);
    ANSWER
    value
    クリックして解説を表示
    EXPLANATION

    ハイフンを含むキーはドット記法では使えないため、ブラケット記法でアクセスします。obj["my-key"]は「value」です。

  • Q6

    オブジェクトのメソッドとは何ですか?

    ANSWER
    オブジェクトのプロパティとして定義された関数
    クリックして解説を表示
    EXPLANATION

    メソッドは「オブジェクトのプロパティとして定義された関数」です。オブジェクトに関連する処理をまとめられます。

  • Q7

    次のコードを実行すると何が表示されますか?

    const person = {
      name: "花子",
      greet: function() {
        return "こんにちは、" + this.name + "です";
      }
    };
    console.log(person.greet());
    ANSWER
    こんにちは、花子です
    クリックして解説を表示
    EXPLANATION

    メソッド内のthisはそのオブジェクト自身を指します。this.nameは「花子」なので、「こんにちは、花子です」と表示されます。

  • Q8

    thisキーワードは何を指しますか?

    ANSWER
    実行コンテキストに応じて変わるオブジェクトを指す
    クリックして解説を表示
    EXPLANATION

    thisは「そのコードが実行されるコンテキスト(文脈)のオブジェクト」を指します。メソッド内では通常、そのメソッドを持つオブジェクトを指します。

  • Q9

    次のコードを実行すると何が表示されますか?

    const car = { brand: "Toyota" };
    car.model = "Prius";
    console.log(car.model);
    ANSWER
    Prius
    クリックして解説を表示
    EXPLANATION

    constで宣言したオブジェクトでも、プロパティの追加や変更は可能です。car.model = "Prius"で新しいプロパティが追加されます。

  • Q10

    Object.keys()メソッドは何を返しますか?

    ANSWER
    オブジェクトのキーの配列
    クリックして解説を表示
    EXPLANATION

    Object.keys()はオブジェクトのすべてのキー(プロパティ名)を配列として返します。

STAGE 2
1120問目 • 10
  • Q11

    次のコードを実行すると何が表示されますか?

    const obj = { a: 1, b: 2, c: 3 };
    console.log(Object.values(obj));
    ANSWER
    [1, 2, 3]
    クリックして解説を表示
    EXPLANATION

    Object.values()はオブジェクトのすべての値を配列として返します。結果は[1, 2, 3]です。

  • Q12

    オブジェクトのプロパティを削除するにはどうしますか?

    ANSWER
    delete obj.key
    クリックして解説を表示
    EXPLANATION

    delete演算子を使うと、オブジェクトからプロパティを削除できます。例:delete obj.key

  • Q13

    map()メソッドは何をしますか?

    ANSWER
    各要素に関数を適用して新しい配列を作る
    クリックして解説を表示
    EXPLANATION

    map()は配列の各要素に対して関数を実行し、その結果から新しい配列を作成します。元の配列は変更されません。

  • Q14

    次のコードを実行すると何が表示されますか?

    const numbers = [1, 2, 3];
    const doubled = numbers.map(n => n * 2);
    console.log(doubled);
    ANSWER
    [2, 4, 6]
    クリックして解説を表示
    EXPLANATION

    map()で各要素を2倍にした新しい配列が作成されます。結果は[2, 4, 6]です。

  • Q15

    filter()メソッドは何をしますか?

    ANSWER
    条件を満たす要素だけの新しい配列を作る
    クリックして解説を表示
    EXPLANATION

    filter()は配列の各要素をテストし、条件を満たす要素だけを含む新しい配列を作成します。

  • Q16

    次のコードを実行すると何が表示されますか?

    const numbers = [1, 2, 3, 4, 5];
    const evens = numbers.filter(n => n % 2 === 0);
    console.log(evens);
    ANSWER
    [2, 4]
    クリックして解説を表示
    EXPLANATION

    filter()で偶数(2で割り切れる数)だけを取り出します。結果は[2, 4]です。

  • Q17

    reduce()メソッドは何をしますか?

    ANSWER
    配列の要素を一つの値にまとめる
    クリックして解説を表示
    EXPLANATION

    reduce()は配列の要素を順番に処理し、単一の値にまとめます。累積計算や合計の計算などに使います。

  • Q18

    次のコードを実行すると何が表示されますか?

    const numbers = [1, 2, 3, 4];
    const sum = numbers.reduce((acc, curr) => acc + curr, 0);
    console.log(sum);
    ANSWER
    10
    クリックして解説を表示
    EXPLANATION

    reduce()で配列の全要素を合計します。初期値0に1, 2, 3, 4を順番に足して、結果は10です。

  • Q19

    find()メソッドは何を返しますか?

    ANSWER
    条件を満たす最初の要素
    クリックして解説を表示
    EXPLANATION

    find()は条件を満たす最初の要素を返します。見つからない場合はundefinedを返します。

  • Q20

    次のコードを実行すると何が表示されますか?

    const users = [
      { id: 1, name: "太郎" },
      { id: 2, name: "花子" },
      { id: 3, name: "次郎" }
    ];
    const user = users.find(u => u.id === 2);
    console.log(user.name);
    ANSWER
    花子
    クリックして解説を表示
    EXPLANATION

    find()でid が2のユーザーオブジェクトを取得し、そのnameプロパティ「花子」を表示します。

STAGE 3
2130問目 • 10
  • Q21

    forEach()メソッドは何をしますか?

    ANSWER
    各要素に対して関数を実行する(戻り値なし)
    クリックして解説を表示
    EXPLANATION

    forEach()は配列の各要素に対して関数を実行します。戻り値はなく(undefined)、副作用のための処理に使います。

  • Q22

    map()forEach()の主な違いは何ですか?

    ANSWER
    mapは新しい配列を返し、forEachは何も返さない
    クリックして解説を表示
    EXPLANATION

    map()は新しい配列を返しますが、forEach()は何も返しません(undefined)。変換した結果が必要ならmap()、単に処理を実行するだけならforEach()を使います。

  • Q23

    some()メソッドは何を返しますか?

    ANSWER
    少なくとも1つの要素が条件を満たすかの真偽値
    クリックして解説を表示
    EXPLANATION

    some()は配列の少なくとも1つの要素が条件を満たすかどうかを判定し、真偽値(true/false)を返します。

  • Q24

    次のコードを実行すると何が表示されますか?

    const numbers = [1, 3, 5, 7, 8];
    const hasEven = numbers.some(n => n % 2 === 0);
    console.log(hasEven);
    ANSWER
    true
    クリックして解説を表示
    EXPLANATION

    some()で偶数が1つでもあるかを判定します。8が偶数なので、結果はtrueです。

  • Q25

    every()メソッドは何を返しますか?

    ANSWER
    すべての要素が条件を満たすかの真偽値
    クリックして解説を表示
    EXPLANATION

    every()は配列のすべての要素が条件を満たすかどうかを判定し、真偽値(true/false)を返します。

  • Q26

    次のコードを実行すると何が表示されますか?

    const numbers = [2, 4, 6, 8];
    const allEven = numbers.every(n => n % 2 === 0);
    console.log(allEven);
    ANSWER
    true
    クリックして解説を表示
    EXPLANATION

    every()ですべての要素が偶数かを判定します。全部偶数なので、結果はtrueです。

  • Q27

    includes()メソッドは何をしますか?

    ANSWER
    配列に特定の値が含まれるかを判定する
    クリックして解説を表示
    EXPLANATION

    includes()は配列に特定の値が含まれているかどうかを判定し、真偽値を返します。

  • Q28

    スプレッド構文(...)は何をしますか?

    ANSWER
    配列やオブジェクトの要素を展開する
    クリックして解説を表示
    EXPLANATION

    スプレッド構文は配列やオブジェクトの要素を展開します。配列のコピーや結合、関数への引数の展開などに使います。

  • Q29

    次のコードを実行すると何が表示されますか?

    const arr1 = [1, 2];
    const arr2 = [3, 4];
    const combined = [...arr1, ...arr2];
    console.log(combined);
    ANSWER
    [1, 2, 3, 4]
    クリックして解説を表示
    EXPLANATION

    スプレッド構文で2つの配列を展開して結合します。結果は[1, 2, 3, 4]です。

  • Q30

    次のコードを実行すると何が表示されますか?

    const original = [1, 2, 3];
    const copy = [...original];
    copy.push(4);
    console.log(original.length);
    ANSWER
    3
    クリックして解説を表示
    EXPLANATION

    スプレッド構文で配列をコピーすると、新しい配列が作られます。copyへの変更はoriginalに影響しないため、lengthは3のままです。

STAGE 4
3140問目 • 10
  • Q31

    次のコードを実行すると何が表示されますか?

    const obj1 = { a: 1, b: 2 };
    const obj2 = { b: 3, c: 4 };
    const merged = { ...obj1, ...obj2 };
    console.log(merged.b);
    ANSWER
    3
    クリックして解説を表示
    EXPLANATION

    オブジェクトをスプレッド構文でマージすると、後のオブジェクトの値で上書きされます。bは3になります。

  • Q32

    レスト構文(...)は何をしますか?

    ANSWER
    残りの要素をまとめて配列として受け取る
    クリックして解説を表示
    EXPLANATION

    レスト構文は残りの要素をまとめて配列として受け取ります。関数の引数や分割代入で使います。

  • Q33

    次のコードを実行すると何が表示されますか?

    function sum(...numbers) {
      return numbers.reduce((a, b) => a + b, 0);
    }
    console.log(sum(1, 2, 3, 4));
    ANSWER
    10
    クリックして解説を表示
    EXPLANATION

    レスト構文で任意の数の引数を配列として受け取り、reduce()で合計します。結果は10です。

  • Q34

    次のコードを実行すると何が表示されますか?

    const [first, ...rest] = [1, 2, 3, 4];
    console.log(rest);
    ANSWER
    [2, 3, 4]
    クリックして解説を表示
    EXPLANATION

    分割代入でレスト構文を使うと、残りの要素が配列としてまとめられます。rest[2, 3, 4]になります。

  • Q35

    スプレッド構文とレスト構文の違いは何ですか?

    ANSWER
    スプレッドは展開、レストはまとめる
    クリックして解説を表示
    EXPLANATION

    スプレッド構文は配列/オブジェクトを「展開」し、レスト構文は複数の要素を「まとめて」配列にします。見た目は同じ...ですが、使う場所で意味が変わります。

  • Q36

    配列の分割代入とは何ですか?

    ANSWER
    配列の要素を個別の変数に取り出す構文
    クリックして解説を表示
    EXPLANATION

    分割代入は配列の要素を個別の変数に取り出す構文です。const [a, b] = [1, 2]のように書きます。

  • Q37

    次のコードを実行すると何が表示されますか?

    const [x, y] = [10, 20];
    console.log(x + y);
    ANSWER
    30
    クリックして解説を表示
    EXPLANATION

    分割代入でxに10、yに20が代入されます。x + yは30です。

  • Q38

    次のコードを実行すると何が表示されますか?

    const [a, , c] = [1, 2, 3];
    console.log(c);
    ANSWER
    3
    クリックして解説を表示
    EXPLANATION

    分割代入で要素をスキップするには、カンマだけを書きます。2番目の要素をスキップして、cには3が代入されます。

  • Q39

    オブジェクトの分割代入の正しい書き方はどれですか?

    ANSWER
    const {name, age} = person;
    クリックして解説を表示
    EXPLANATION

    オブジェクトの分割代入は波括弧{}を使い、プロパティ名と同じ変数名で取り出します。

  • Q40

    次のコードを実行すると何が表示されますか?

    const { name, age } = { name: "太郎", age: 25, city: "東京" };
    console.log(name);
    ANSWER
    太郎
    クリックして解説を表示
    EXPLANATION

    オブジェクトの分割代入でnameプロパティを取り出します。値は「太郎」です。

STAGE 5
4150問目 • 10
  • Q41

    次のコードを実行すると何が表示されますか?

    const { name: userName } = { name: "花子" };
    console.log(userName);
    ANSWER
    花子
    クリックして解説を表示
    EXPLANATION

    分割代入で別の変数名を指定するにはプロパティ名: 新しい変数名と書きます。userNameに「花子」が代入されます。

  • Q42

    次のコードを実行すると何が表示されますか?

    const { a = 10 } = {};
    console.log(a);
    ANSWER
    10
    クリックして解説を表示
    EXPLANATION

    分割代入でデフォルト値を指定できます。オブジェクトにaがないので、デフォルト値の10が使われます。

  • Q43

    テンプレートリテラルとは何ですか?

    ANSWER
    バッククォートで囲み、変数を埋め込める文字列
    クリックして解説を表示
    EXPLANATION

    テンプレートリテラルはバッククォート()で囲む文字列です。${}`で変数や式を埋め込めて、複数行の文字列も書けます。

  • Q44

    次のコードを実行すると何が表示されますか?

    const name = "太郎";
    console.log(`こんにちは、${name}さん`);
    ANSWER
    こんにちは、太郎さん
    クリックして解説を表示
    EXPLANATION

    テンプレートリテラルの${}内に変数を書くと、その値が埋め込まれます。「こんにちは、太郎さん」と表示されます。

  • Q45

    次のコードを実行すると何が表示されますか?

    const a = 5;
    const b = 3;
    console.log(`結果: ${a + b}`);
    ANSWER
    結果: 8
    クリックして解説を表示
    EXPLANATION

    テンプレートリテラルの${}内では計算もできます。${a + b}は8になり、「結果: 8」と表示されます。

  • Q46

    テンプレートリテラルで複数行の文字列を書くことはできますか?

    ANSWER
    できる(改行がそのまま含まれる)
    クリックして解説を表示
    EXPLANATION

    テンプレートリテラルは改行をそのまま含められるため、複数行の文字列を自然に書けます。通常の文字列では\nが必要です。

  • Q47

    テンプレートリテラルと通常の文字列(シングル/ダブルクォート)の違いは何ですか?

    ANSWER
    変数の埋め込みと複数行が可能
    クリックして解説を表示
    EXPLANATION

    テンプレートリテラルは${}で変数/式を埋め込める、複数行が書ける、という点が異なります。

  • Q48

    クラスとは何ですか?

    ANSWER
    オブジェクトを作るための設計図
    クリックして解説を表示
    EXPLANATION

    クラスは「オブジェクトを作るための設計図」です。同じ構造のオブジェクトを効率よく作成できます。

  • Q49

    クラスを定義する正しい書き方はどれですか?

    ANSWER
    class Person { }
    クリックして解説を表示
    EXPLANATION

    クラスはclass クラス名 { }の形で定義します。クラス名は慣例的に大文字で始めます。

  • Q50

    constructorメソッドは何をしますか?

    ANSWER
    インスタンス作成時に自動で呼ばれ、初期化を行う
    クリックして解説を表示
    EXPLANATION

    constructorはインスタンスが作成されるときに自動的に呼ばれる特別なメソッドで、初期化処理を行います。

STAGE 6
5160問目 • 10
  • Q51

    次のコードを実行すると何が表示されますか?

    class Person {
      constructor(name) {
        this.name = name;
      }
    }
    const p = new Person("太郎");
    console.log(p.name);
    ANSWER
    太郎
    クリックして解説を表示
    EXPLANATION

    new Person("太郎")でインスタンスを作成し、constructorthis.nameに「太郎」が設定されます。

  • Q52

    クラスでメソッドを定義する正しい書き方はどれですか?

    ANSWER
    greet() { }
    クリックして解説を表示
    EXPLANATION

    クラス内でメソッドを定義するときは、functionキーワードなしでメソッド名() { }と書きます。

  • Q53

    次のコードを実行すると何が表示されますか?

    class Calculator {
      add(a, b) {
        return a + b;
      }
    }
    const calc = new Calculator();
    console.log(calc.add(3, 5));
    ANSWER
    8
    クリックして解説を表示
    EXPLANATION

    Calculatorクラスのaddメソッドを呼び出します。3 + 5で8が返されます。

  • Q54

    クラスの継承とは何ですか?

    ANSWER
    既存のクラスの機能を引き継いで新しいクラスを作ること
    クリックして解説を表示
    EXPLANATION

    継承は「既存のクラスの機能を引き継いで新しいクラスを作る」仕組みです。extendsキーワードを使います。

  • Q55

    次のコードを実行すると何が表示されますか?

    class Animal {
      speak() {
        return "音";
      }
    }
    class Dog extends Animal {
      speak() {
        return "ワン";
      }
    }
    const dog = new Dog();
    console.log(dog.speak());
    ANSWER
    ワン
    クリックして解説を表示
    EXPLANATION

    DogクラスはAnimalを継承し、speakメソッドをオーバーライド(上書き)しています。「ワン」が表示されます。

  • Q56

    superキーワードは何をしますか?

    ANSWER
    親クラスのコンストラクタやメソッドを呼び出す
    クリックして解説を表示
    EXPLANATION

    superは親クラスのコンストラクタやメソッドを呼び出すために使います。子クラスのコンストラクタでは最初にsuper()を呼ぶ必要があります。

  • Q57

    次のコードを実行すると何が表示されますか?

    class Animal {
      constructor(name) {
        this.name = name;
      }
    }
    class Dog extends Animal {
      constructor(name, breed) {
        super(name);
        this.breed = breed;
      }
    }
    const dog = new Dog("ポチ", "柴犬");
    console.log(dog.name);
    ANSWER
    ポチ
    クリックして解説を表示
    EXPLANATION

    super(name)で親クラスのコンストラクタを呼び、this.nameに「ポチ」が設定されます。

  • Q58

    staticキーワードは何をしますか?

    ANSWER
    クラス自体に属するメソッド/プロパティを定義する
    クリックして解説を表示
    EXPLANATION

    staticはクラス自体に属するメソッドやプロパティを定義します。インスタンスではなく、クラス名から直接呼び出します。

  • Q59

    次のコードを実行すると何が表示されますか?

    class MathUtil {
      static add(a, b) {
        return a + b;
      }
    }
    console.log(MathUtil.add(2, 3));
    ANSWER
    5
    クリックして解説を表示
    EXPLANATION

    静的メソッドはクラス名から直接呼び出します。MathUtil.add(2, 3)は5を返します。

  • Q60

    DOMとは何ですか?

    ANSWER
    HTMLをJavaScriptで操作するためのインターフェース
    クリックして解説を表示
    EXPLANATION

    DOM(Document Object Model)は「HTMLをJavaScriptで操作するためのインターフェース」です。要素の取得、変更、追加、削除ができます。

STAGE 7
6170問目 • 10
  • Q61

    document.getElementById()は何をしますか?

    ANSWER
    指定したid属性の要素を取得する
    クリックして解説を表示
    EXPLANATION

    getElementById()は指定したid属性を持つ要素を1つ取得します。idはページ内で一意である必要があります。

  • Q62

    document.querySelector()は何をしますか?

    ANSWER
    CSSセレクタにマッチする最初の要素を取得する
    クリックして解説を表示
    EXPLANATION

    querySelector()はCSSセレクタにマッチする最初の要素を取得します。柔軟な指定ができます。

  • Q63

    document.querySelectorAll()は何を返しますか?

    ANSWER
    マッチするすべての要素のNodeList
    クリックして解説を表示
    EXPLANATION

    querySelectorAll()はCSSセレクタにマッチするすべての要素をNodeList(配列に似たオブジェクト)として返します。

  • Q64

    textContentプロパティは何をしますか?

    ANSWER
    要素のテキスト内容を取得/設定する
    クリックして解説を表示
    EXPLANATION

    textContentは要素のテキスト内容を取得または設定します。HTMLタグは解釈されず、純粋なテキストとして扱われます。

  • Q65

    innerHTMLtextContentの違いは何ですか?

    ANSWER
    innerHTMLはHTMLを解釈し、textContentはテキストのみ
    クリックして解説を表示
    EXPLANATION

    innerHTMLはHTMLとして解釈されタグが有効ですが、textContentは純粋なテキストとして扱われHTMLタグはそのまま表示されます。

  • Q66

    classList.add()は何をしますか?

    ANSWER
    要素にCSSクラスを追加する
    クリックして解説を表示
    EXPLANATION

    classList.add()は要素にCSSクラスを追加します。既に存在するクラスは重複して追加されません。

  • Q67

    classList.toggle()は何をしますか?

    ANSWER
    クラスがあれば削除し、なければ追加する
    クリックして解説を表示
    EXPLANATION

    classList.toggle()はクラスがあれば削除し、なければ追加します。切り替え機能に便利です。

  • Q68

    document.createElement()は何をしますか?

    ANSWER
    新しいHTML要素を作成する
    クリックして解説を表示
    EXPLANATION

    createElement()は新しいHTML要素を作成します。作成後はappendChild()などでDOMに追加する必要があります。

  • Q69

    appendChild()は何をしますか?

    ANSWER
    子要素として末尾に追加する
    クリックして解説を表示
    EXPLANATION

    appendChild()は指定した要素を親要素の子要素として末尾に追加します。

  • Q70

    イベントとは何ですか?

    ANSWER
    ユーザーの操作などで発生する出来事
    クリックして解説を表示
    EXPLANATION

    イベントは「ユーザーの操作やブラウザの動作によって発生する出来事」です。クリック、キー入力、ページ読み込みなどがあります。

STAGE 8
7180問目 • 10
  • Q71

    addEventListener()は何をしますか?

    ANSWER
    イベント発生時に実行する関数を登録する
    クリックして解説を表示
    EXPLANATION

    addEventListener()は要素にイベントリスナー(イベント発生時に実行する関数)を登録します。

  • Q72

    次のコードは何をしますか?

    button.addEventListener("click", function() {
      alert("クリックされました");
    });
    ANSWER
    クリック時にアラートを表示する
    クリックして解説を表示
    EXPLANATION

    ボタンがクリックされたときに「クリックされました」というアラートを表示するイベントリスナーを登録しています。

  • Q73

    イベントオブジェクトとは何ですか?

    ANSWER
    イベントの詳細情報を含むオブジェクト
    クリックして解説を表示
    EXPLANATION

    イベントオブジェクトはイベント発生時に自動的に渡されるオブジェクトで、イベントの詳細情報(どの要素で発生したか、マウスの位置など)を含みます。

  • Q74

    event.preventDefault()は何をしますか?

    ANSWER
    イベントのデフォルト動作をキャンセルする
    クリックして解説を表示
    EXPLANATION

    preventDefault()はイベントのデフォルト動作をキャンセルします。例えばフォームの送信を止めたり、リンクのページ遷移を止めたりできます。

  • Q75

    event.targetは何を参照しますか?

    ANSWER
    イベントが発生した要素
    クリックして解説を表示
    EXPLANATION

    event.targetはイベントが発生した要素を参照します。クリックされたボタンや入力されたinputなどを取得できます。

  • Q76

    イベントの伝播(バブリング)とは何ですか?

    ANSWER
    子要素のイベントが親要素に伝わること
    クリックして解説を表示
    EXPLANATION

    イベントの伝播(バブリング)は、子要素で発生したイベントが親要素にも伝わっていく仕組みです。

  • Q77

    setTimeout()は何をしますか?

    ANSWER
    指定時間後に関数を1回実行する
    クリックして解説を表示
    EXPLANATION

    setTimeout()は指定した時間(ミリ秒)後に関数を1回だけ実行します。

  • Q78

    次のコードを実行すると、何が何秒後に表示されますか?

    setTimeout(() => {
      console.log("Hello");
    }, 2000);
    ANSWER
    「Hello」が2秒後に表示される
    クリックして解説を表示
    EXPLANATION

    setTimeoutの第2引数はミリ秒なので、2000ミリ秒 = 2秒後に「Hello」が表示されます。

  • Q79

    setInterval()は何をしますか?

    ANSWER
    指定間隔で関数を繰り返し実行する
    クリックして解説を表示
    EXPLANATION

    setInterval()は指定した間隔(ミリ秒)ごとに関数を繰り返し実行します。

  • Q80

    clearInterval()は何をしますか?

    ANSWER
    setIntervalの繰り返しを停止する
    クリックして解説を表示
    EXPLANATION

    clearInterval()setInterval()で設定した繰り返し処理を停止します。

STAGE 9
8190問目 • 10
  • Q81

    コールバック関数とは何ですか?

    ANSWER
    別の関数に渡されて後で実行される関数
    クリックして解説を表示
    EXPLANATION

    コールバック関数は「別の関数に引数として渡され、後で実行される関数」です。非同期処理やイベント処理で多用されます。

  • Q82

    次のコードで、表示される順番はどれですか?

    console.log("1");
    setTimeout(() => console.log("2"), 0);
    console.log("3");
    ANSWER
    1, 3, 2
    クリックして解説を表示
    EXPLANATION

    setTimeoutは0ミリ秒でも非同期なので、同期処理(1, 3)が先に実行され、その後に2が実行されます。

  • Q83

    非同期処理とは何ですか?

    ANSWER
    処理の完了を待たずに次に進むこと
    クリックして解説を表示
    EXPLANATION

    非同期処理は「処理の完了を待たずに次の処理に進む」方式です。時間のかかる処理でプログラムがブロックされるのを防ぎます。

  • Q84

    JSON.parse()は何をしますか?

    ANSWER
    JSON文字列をオブジェクトに変換する
    クリックして解説を表示
    EXPLANATION

    JSON.parse()はJSON文字列をJavaScriptのオブジェクトに変換します。

  • Q85

    次のコードを実行すると何が表示されますか?

    const json = '{"name": "太郎", "age": 25}';
    const obj = JSON.parse(json);
    console.log(obj.name);
    ANSWER
    太郎
    クリックして解説を表示
    EXPLANATION

    JSON.parse()でJSON文字列をオブジェクトに変換し、nameプロパティの値「太郎」を取得します。

  • Q86

    JSON.stringify()は何をしますか?

    ANSWER
    オブジェクトをJSON文字列に変換する
    クリックして解説を表示
    EXPLANATION

    JSON.stringify()はJavaScriptのオブジェクトをJSON文字列に変換します。

  • Q87

    次のコードを実行すると何が表示されますか?

    const obj = { name: "花子", age: 30 };
    const json = JSON.stringify(obj);
    console.log(typeof json);
    ANSWER
    string
    クリックして解説を表示
    EXPLANATION

    JSON.stringify()はオブジェクトを文字列に変換するので、typeof jsonstringです。

  • Q88

    try-catch文は何をしますか?

    ANSWER
    エラーを捕捉して処理する
    クリックして解説を表示
    EXPLANATION

    try-catch文はエラー(例外)を捕捉して処理します。tryブロック内でエラーが発生すると、catchブロックが実行されます。

  • Q89

    次のコードを実行すると何が表示されますか?

    try {
      throw new Error("エラー発生");
      console.log("A");
    } catch (e) {
      console.log("B");
    }
    ANSWER
    B
    クリックして解説を表示
    EXPLANATION

    throwでエラーを発生させると、それ以降のtryブロック内の処理はスキップされ、catchブロックが実行されます。

  • Q90

    finallyブロックは何をしますか?

    ANSWER
    エラーの有無に関わらず必ず実行される
    クリックして解説を表示
    EXPLANATION

    finallyブロックはエラーの有無に関わらず必ず実行されます。リソースの解放などに使います。

STAGE 10
9197問目 • 7
  • Q91

    次のコードを実行すると何が表示されますか?

    try {
      console.log("A");
    } catch (e) {
      console.log("B");
    } finally {
      console.log("C");
    }
    ANSWER
    A, C
    クリックして解説を表示
    EXPLANATION

    エラーがないのでtryブロックが実行されて「A」、catchはスキップ、finallyは必ず実行されて「C」が表示されます。

  • Q92

    throw文は何をしますか?

    ANSWER
    意図的にエラーを発生させる
    クリックして解説を表示
    EXPLANATION

    throw文は意図的にエラー(例外)を発生させます。入力値の検証などで使います。

  • Q93

    localStorageとは何ですか?

    ANSWER
    ブラウザに永続的にデータを保存する仕組み
    クリックして解説を表示
    EXPLANATION

    localStorageはブラウザにデータを永続的に保存する仕組みです。ブラウザを閉じてもデータが残ります。

  • Q94

    localStorage.setItem()は何をしますか?

    ANSWER
    キーと値のペアを保存する
    クリックして解説を表示
    EXPLANATION

    setItem()はキーと値のペアをlocalStorageに保存します。値は文字列として保存されます。

  • Q95

    localStorage.getItem()は何を返しますか?

    ANSWER
    文字列を返す(存在しない場合はnull)
    クリックして解説を表示
    EXPLANATION

    getItem()は指定したキーの値を文字列として返します。キーが存在しない場合はnullを返します。

  • Q96

    sessionStoragelocalStorageの違いは何ですか?

    ANSWER
    sessionStorageはタブを閉じると消え、localStorageは残る
    クリックして解説を表示
    EXPLANATION

    sessionStorageはブラウザのタブを閉じるとデータが消えますが、localStorageは明示的に削除しない限りデータが残ります。

  • Q97

    localStorageにオブジェクトを保存するにはどうしますか?

    ANSWER
    JSON.stringify()で文字列に変換してから保存
    クリックして解説を表示
    EXPLANATION

    localStorageは文字列しか保存できないため、オブジェクトはJSON.stringify()で文字列に変換してから保存します。