javascript - 数组javascript循环错误
问题描述
这是一个简单的问题,但我无法解决。总是当我托盘在我的数组中执行 loopp 时返回索引 0
<script>
let status = [];
let number = [];
let llamadas = [];
llamadas = {!! json_encode($estados) !!}
for(var i=0; i<llamadas.length; i++){
console.log(llamadas[i][i]);
status.push(llamadas[i][i].desc);
number.push(llamadas[i][i].total)
}
llamadas
它是我来自控制器的变量,我正在使用 laravel 5.6 如何后端
llamadas
包含这个:
(7) [{…}, {…}, {…}, {…}, {…}, {…}, {…}]
0: {id_teleoperadora: 9, desc: "APLAZADA", total: 40}
1: {id_teleoperadora: 9, desc: "AUSENTE", total: 132}
2: {id_teleoperadora: 9, desc: "CONFIRMADA", total: 218}
3: {id_teleoperadora: 9, desc: "NUEVA", total: 101}
4: {id_teleoperadora: 9, desc: "NULA", total: 217}
5: {id_teleoperadora: 9, desc: "PENDIENTE", total: 45}
6: {id_teleoperadora: 9, desc: "VENTA", total: 1}
length: 7
__proto__: Array(0)
以及他的原始内容内容
[Array(7)]
0: (7) [{…}, {…}, {…}, {…}, {…}, {…}, {…}]
length: 1
__proto__: Array(0)
我从来没有以这种方式显示一个数组
在推送中,我需要提取desc
以使用 chart.js 构建统计数据。现在我只能返回一个状态。我不知道我做错了。当我有的时候status
我会继续,number
但现在我只能返回一个结果status "aplazada"
我不知道我是否做得很好我的pushs
感谢帮助
解决方案
在我的控制器中我有错误,应该是:
public function getStateCallCommercial($operadora)
{
$callSend = array();
array_push($callSend, \DB::select(
\DB::raw("SELECT L.id_teleoperadora, CE.desc, COUNT(C.id) as total
FROM LLAMADA L
JOIN CITA C ON L.ID = C.id_llamada
JOIN CITA_ESTADO CE ON C.id_estado = CE.id
WHERE L.id_teleoperadora = $operadora
AND L.id_estado = 5
GROUP BY L.id_teleoperadora, CE.desc
ORDER BY CE.desc;" ) )
);
return view('admin.estadisticas.index')->with('estados', $callSend[0]);
这会将我的数据发送给查看。在我的刀片中:
<script>
let status = [];
let number = [];
let llamadas = [];
llamadas = {!! json_encode($estados) !!};
for(var i=0; i<llamadas.length; i++){
status.push(llamadas[i].desc);
number.push(llamadas[i].total)
}
var ctx = document.getElementById('myChart').getContext('2d');
var myChart = new Chart(ctx, {
type: 'bar',
data: {
labels: status,
datasets: [{
label: 'Estado de las llamadas pasadas a comerciales',
data: number,
backgroundColor: [
'rgba(255, 99, 132, 0.2)',
'rgba(54, 162, 235, 0.2)',
'rgba(255, 206, 86, 0.2)',
'rgba(75, 192, 192, 0.2)',
'rgba(153, 102, 255, 0.2)',
'rgba(255, 159, 64, 0.2)'
],
borderColor: [
'rgba(255, 99, 132, 1)',
'rgba(54, 162, 235, 1)',
'rgba(255, 206, 86, 1)',
'rgba(75, 192, 192, 1)',
'rgba(153, 102, 255, 1)',
'rgba(255, 159, 64, 1)'
],
borderWidth: 1
}]
},
options: {
scales: {
y: {
beginAtZero: true
}
}
}
});
有了这个我建立我的图形。
感谢所有回复和帮助
推荐阅读
- php - 未捕获的错误:找不到类“React\React\EventLoop\Factory”
- javascript - 正则表达式查找单词的最佳匹配子集
- regex - 在一个 Apache-NiFi 语句中多次替换正则表达式
- python-3.x - AttributeError:“str”对象没有属性“subs”
- java - 图书馆和本地人是资源的一部分吗?
- node.js - 如何从另一个 ipcMain 命令调用 ipcMain 命令?
- sql-server - SQL Server - 选择和加入父子记录、透视和分组
- java - JAVA写入超过5000行后Excel写入变慢
- c# - 如何在 WinSCP C# 中使用 Session.GetFiles 下载单个文件
- canvas - 如何在 Angular 7 中使用内联 css 将 HTML 模态内容转换为 pdf?