Tengo datos enviados desde una página php y quiero guardar los valores de 'fecha' y 'recuento' en dos matrices diferentes en javascript. Pero no sé cómo acceder a los datos a continuación. ¿Alguna ayuda?
{ "0": { "date": "12/24/21", "count": 1 }, "1": { "date": "01/01/22", "count": 1 }, "3": { "date": "01/02/22", "count": 2 }, "6": { "date": "01/04/22", "count": 3 }, "7": { "date": "01/05/22", "count": 1 }, "9": { "date": "01/06/22", "count": 2 } }codigo javascript:
$(document).ready(function(){ $.ajax({ url: "/ajax/page", method: "GET", success: function(data) { let date = []; let count = []; // code to save the values from php page }, error: function(data) { console.log('error'); } }); });Creo que puede que te falten algunos paréntesis y corchetes después del campo de éxito. Es posible que desee arreglarlo un poco como:
$(document).ready(function () { $.ajax({ url: "/ajax/page", method: "GET", success: function (data) { let date = []; let count = []; // code to save the values from php page for (keys in data) { //do ya thang } }, error: function (data) { console.log("error"); } }); });Con todo agradable y arreglado, podría utilizar algunos métodos para iterar a través de ese objeto JSON que se devuelve. Puede obtener las claves de objetos y usarlas para iterar a través del objeto con Object.keys(yourObject) , o puede usar un bucle for-in como el anterior para iterar a través del objeto.
De cualquier manera, puede iterar a través del objeto e insertar los valores de fecha y conteo para cada campo en el objeto en sus arreglos de fecha y conteo.
const data = '{ "0": { "date": "12/24/21", "count": 1 }, "1": { "date": "01/01/22", "count": 1 }, "3": { "date": "01/02/22", "count": 2 }, "6": { "date": "01/04/22", "count": 3 }, "7": { "date": "01/05/22", "count": 1 }, "9": { "date": "01/06/22", "count": 2 } }'; const obj = JSON.parse(data); const dateArr = []; const countArr = []; for (const value of Object.values(obj)) { const { date, count } = value; dateArr.push(date); countArr.push(count); } console.log("dateArr", dateArr); console.log("countArr", countArr); esto es bastante sencillo, si sus datos son json , primero debe analizarlos en Javascript usando JSON.parse y luego usar Object.values y un bucle para enviar sus datos a sus variables.
Aquí estoy usando for...of loop