CodeBlanks Logo Icon CodeBlanks

Soru nesneleri tanımlama

JavaScript kursu · Başlangıç · Ders 78/133

Soru, seçenekler ve doğru cevabı tutan nesnelerden dizi oluşturursun.

Soru nesnesi

Her soruyu bir nesne olarak tanımlayacağız. Nesne, ilgili verileri süslü parantezler içinde anahtar-değer çiftleriyle tutar:

{ question: "...", options: [...], answer: 1 }

Burada question soru metni, options seçenekler dizisi, answer ise doğru seçeneğin indeksidir. Tek bir nesne, bir sorunun tüm parçalarını paketler; böylece veriler dağınık hâlide gelmez.

Soru nesnelerinden dizi

Tek bir soru nesnesi işe yaramaz; birden çok soruyu bir dizide toplarız. Her eleman bir nesne olur:

const questions = [{ ... }, { ... }];

Bu yapıya nesne dizisi denir. questions[0] ilk soruyu, questions[1] ikinci soruyu verir. questions.length bize kaç soru olduğunu söyler. for...of ile tümünü sırayla dolaşabiliriz.

Uygulama Soru nesnelerinden dizi tanımla

Bir önceki adımda boş bir questions dizisi tanımlamıştın. Şimdi içine en az iki soru nesnesi ekle. Her nesnede question, options ve answer özellikleri olsun. Sonra console.log(questions.length) ile soru sayısını yazdır.

Örnek çözümü göster
// Quiz sorularını tanımla
const questions = [
  { question: "Türkiye'nin başkenti?", options: ["İzmir", "Ankara", "Bursa"], answer: 1 },
  { question: "En çok yağış alan il?", options: ["Rize", "Konya", "Ankara"], answer: 0 }
];
console.log(questions.length);

Kendini test et

  1. Doğru cevap indeksini tamamla

    const firstQuestion = {
      question: "Türkiye'nin başkenti?",
      options: ["İzmir", "Ankara", "Bursa"],
      answer: ____
    };
    console.log(firstQuestion.answer);
    Cevabı göster
    const firstQuestion = {
      question: "Türkiye'nin başkenti?",
      options: ["İzmir", "Ankara", "Bursa"],
      answer: 1
    };
    console.log(firstQuestion.answer);
  2. const questions = [{ q: 'A', answer: 1 }, { q: 'B', answer: 0 }]; tanımında questions[1].answer ne döner?

    • 0
    • 1
    • undefined
    • 'B'
    Cevabı göster

    0 — Doğru! questions[1] ikinci nesnedir ve onun answer özelliği 0'dır.

  3. İfadeyi değerine eşleştir

    questions[0].question
    Türkiye'nin başkenti?
    questions[0].options[1]
    Ankara
    questions[0].answer
    1
    questions.length
    2

Başlangıç bölümündeki tüm dersler