Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
想要从javascript中的数组中获取值吗_Javascript_Arrays_Ajax - Fatal编程技术网

想要从javascript中的数组中获取值吗

想要从javascript中的数组中获取值吗,javascript,arrays,ajax,Javascript,Arrays,Ajax,在这里,我得到了javaScript ajax作为数组的价值。 我只需要数组中的值。 我的数组是这样的 data: monthArray ( [0] => Array ( [Name] => abc [total_point] => 100 [total_earn_point] => 0 ) ) weekArray ( [0] => Array

在这里,我得到了javaScript ajax作为数组的价值。 我只需要数组中的值。 我的数组是这样的

data:

monthArray
(
    [0] => Array
        (
            [Name] => abc
            [total_point] => 100
            [total_earn_point] => 0
        )

)
weekArray
(
    [0] => Array
        (
            [Name] => xyz
            [total_point] => 100
            [total_earn_point] => 0
        )

)
这里,

函数emp_perf(){
jQuery.ajax({
url:“等级任务/emp绩效”,
数据:“”,
键入:“获取”,
成功:功能(数据){
警报(数据[0]);
},
错误:函数(){}
});
}
设定间隔(emp_perf,3000);
在这里,我找不到。 我希望数据作为单独的javascript变量

那么,如何在javascript中实现这一点呢? (更新)

解释:


您的数据是一个对象,因此可以使用键访问其元素<代码>数据。monthName或
数据[“monthName”]
,现在是
数据。monthName
是一个数组,您可以使用
[]
访问它的值,它的第一个元素是对象,再次使用相同的符号来获取它的值。

以JSON的形式返回数据,这是PHP和Javascript之间交互的最佳方式。然后可以使用
JSON.parse
将JSON转换为javascript对象/数组

PHP

<?php
//emp_performance
die(json_encode($dataArray));
?>

Javascript

function emp_perf(){

   jQuery.ajax({
       url: "<?php echo base_url(); ?>grade_tasks/emp_performance",
       data:'',
       type:"GET",
       success:function(data){

        data = JSON.parse(data);
        //you can use $.parseJSON(data) too since you are using jQuery

        console.log(data.MonthArray);
        console.log(data.MonthArray[0].Name);
        console.log(data.MonthArray[0].total_point);
        console.log(data.MonthArray[0].total_earn_point);

            console.log(data.WeekArray);
        console.log(data.WeekArray[0].Name);
        console.log(data.WeekArray[0].total_point);
        console.log(data.WeekArray[0].total_earn_point);

        },
        error:function (){}
    });
}
setInterval(emp_perf, 3000);
函数emp_perf(){
jQuery.ajax({
url:“等级任务/emp绩效”,
数据:“”,
键入:“获取”,
成功:功能(数据){
data=JSON.parse(数据);
//您也可以使用$.parseJSON(数据),因为您使用的是jQuery
console.log(data.MonthArray);
console.log(data.MonthArray[0].Name);
console.log(data.MonthArray[0].总分);
console.log(data.MonthArray[0]。总积分);
console.log(data.WeekArray);
console.log(data.WeekArray[0].Name);
console.log(data.WeekArray[0].总分);
console.log(data.WeekArray[0]。总分);
},
错误:函数(){}
});
}
设定间隔(emp_perf,3000);

<代码> >你能告诉我们<代码>数据< /代码>?@ RayndabRe,为什么你怀疑它?我得到“未定义”的结果是“警报(数据[0 ] [ TooPosiPoT ]));“我想<代码>数据< /代码>不是一个数组,而是一个<代码>对象< /代码>,你也可能要考虑这些键。请参阅更新的代码。我在控制台中遇到如下错误,TypeError:data.monthArray是未定义的警报(data[“monthArray”][0].name);
<?php
//emp_performance
die(json_encode($dataArray));
?>
function emp_perf(){

   jQuery.ajax({
       url: "<?php echo base_url(); ?>grade_tasks/emp_performance",
       data:'',
       type:"GET",
       success:function(data){

        data = JSON.parse(data);
        //you can use $.parseJSON(data) too since you are using jQuery

        console.log(data.MonthArray);
        console.log(data.MonthArray[0].Name);
        console.log(data.MonthArray[0].total_point);
        console.log(data.MonthArray[0].total_earn_point);

            console.log(data.WeekArray);
        console.log(data.WeekArray[0].Name);
        console.log(data.WeekArray[0].total_point);
        console.log(data.WeekArray[0].total_earn_point);

        },
        error:function (){}
    });
}
setInterval(emp_perf, 3000);