2016-08-25 24 views
-2

配列内の2つのオブジェクト値を比較するにはどうすればよいですか?配列内の2つのオブジェクト値を比較しますか?

私のウェブページは、入力質問が複数あるクイズで構成されています。ユーザの入力userinputは、arrayに保存されています。すでに質問にはqというステムがあり、回答はansです。

アレイ:

var questions = [ 
    [{ 
     "q": "What is the capital of England?", 
     "ans": "london", 
     "userinput": "london" 
    }, { 
     "q": "What is the capital of Ireland?", 
     "ans": "dublin", 
     "userinput": "dublin" 
    }, { 
     "q": "What is the capital of France?", 
     "ans": "paris", 
     "userinput": "paris" 
    }, { 
     "q": "What is the captial of Spain?", 
     "ans": "london", 
     "userinput": "madrid" 
    }], 
    [ 
     [{ 
      "q": ... 

私はcomparsion ifステートメントを作成するかどうかはわかりません。ここで私が試したことがあります。コンソールメッセージSyntaxError: Unexpected token {が表示されます。

私は[$slide][$qnum]を含めるので、他のページにコードを再利用しています。

if ($(questions[$slide][$qnum].userinput.val()) === $(questions[$slide][$qnum].ans.val()) 
... 

答えて

1

ここではjQueryは必要ありません。 arrayの質問をindexで選択し、次に質問objectuserinputansのプロパティを使用する必要があります。

if(questions[$slide][$qnum].userinput) === questions[$slide][$qnum].ans) 

例:

var questions = [ 
 
    [{ 
 
     q   : "What is the capital of England?", 
 
     ans  : "london", 
 
     userinput : "london" 
 
    }] 
 
]; 
 

 
if(questions[0][0].userinput === questions[0][0].ans) { 
 
    console.log("match"); 
 
}

関連する問題