J'ai quelques problèmes dans la manipulation d'un réseau obtenu dans la fonction de rappel à travers websocketsProblèmes liés à la manipulation d'un réseau obtenu à partir du serveur avec les sockets web
code côté serveur
var io = require('socket.io').listen(app);
io.sockets.on('connection', function (socket) {
var currentTime = new Date().getTime();
var startTime = currentTime - (5*60*1000);
step = 30*1000;
var stats = [];
stats["values"] = [1, 2, 3, 4, 3, 4, 5, 8, 2, 3, 4, 1];
stats["start"] = startTime;
stats["end"] = currentTime;
socket.emit('initial', { stats: stats });
socket.on('echo', function (data) {
});
});
code côté client
var data;
socket.on('initial', function (stats) {
data = stats.stats;
});
Maintenant, lorsque j'essaie de manipuler la variable de données.Comme à l'aide de pousser et de décalage
data.values.push(10);
data.values.shift();
Je m'y attendais d'avoir
2, 3, 4, 3, 4, 5, 8, 2, 3, 4, 1, 10
Mais je ne sais pas le fonctionnement de changement supprime complètement tous les éléments et je reçois seulement 10 restant dans le tableau. Qu'est-ce qui ne va pas?
@Irsjng. C'est ce que j'ai fait. Désolé j'ai mal tapé dans le code. Je l'ai réparé maintenant. La chose est que même si je fais cela, ça ne marche pas. Lorsque j'essaie de manipuler l'objet de données en utilisant shift. Il supprime tous les éléments – user31820
Etes-vous sûr que le tableau était vraiment rempli avant? – lrsjng
Ouais. Je suis sûr que – user31820