我如何访问javascript函数返回的数组中的对象

时间:2017-04-13 19:42:53

标签: javascript php jquery arrays json

此函数调用一个回显JSON数据的PHP脚本,它循环遍历JSON对象,创建一个新对象并将此新对象推送到函数返回的数组

function getTestQuestions() {
        // alert('10');
        var sessionQuestions = [];
        $.getJSON('testservice.php?action=getQuestions', function(json){
            
            
            if (json.your_questions.length > 0) {
                var totalQuestions = json.your_questions.length;
                totalQuestions_global = totalQuestions;



                for (var i = 0; i < totalQuestions; i++) {

                    var question_object = new Object();
                    question_object.serialNo = i;
                    question_object.passage = json.your_questions[i]['passage'];
                    question_object.cur_question = json.your_questions[i]['question'];
                    question_object.option1= json.your_questions[i]['option1'];
                    question_object.option2 = json.your_questions[i]['option2'];
                    question_object.option3 = json.your_questions[i]['option3'];
 

                    sessionQuestions.push(question_object);

                }

            }
        });
        
        return sessionQuestions;
    }

下一个函数调用此函数。但我在访问数组内的对象时遇到问题。见代码:

function initialTestLoaded() {

                var allQuestions = getTestQuestions();                   

                $('.current_quest').text(allQuestions[0]['serialNo']);
                $('.total_quest').text(testQuestions.length);

最后两行中的代码返回一个错误,即无法访问未定义的“serialNo”ppty。

这是我第一次在这里发帖提问,我相信这里的好人会一如既往地给予大力帮助。感谢

1 个答案:

答案 0 :(得分:0)

在php中使用 json_decode

json_decode($jsondata, true);

基本示例

<?php 
$json_string = 'https://example.com/jsondata.json';
$jsondata = file_get_contents($json_string);
$obj = json_decode($jsondata,true);
echo "<pre>";
print_r($obj);
?>