3 votes

Comment supprimer une partie d'un objet en javascript

Ceci est mon code :

var data = [];
$("#btn").click(function(){
    total++;
    data.push({        
        id : total,
        "cell": [
            "val1",
            "val2",
            "val3",
        ]
    });
});

Chaque fois que l'utilisateur clique sur le bouton btn, j'ajoute des valeurs à l'objet data. Maintenant, ma question est de savoir comment je peux supprimer la partie qui a id = X

8voto

Jibi Abraham Points 1828

Il suffit d'utiliser
x = {id1: "valeur quelconque"}
delete x.id1

C'est à peu près tout

1voto

MyStream Points 1551

Vous pouvez utiliser .splice() à la position X

var data = [{id : total, "cell" : ["val1", "val2", "val3"]}[, ...répéter];

var X = 0; // position à supprimer
data.splice(X,1);

extension:

for (var i=data.length-1; 0 < i; i--) {
    if (data[i].id == X) {
        data.splice(X,1);
        break;
    }
}

1voto

ldgorman Points 669
const {  ceQueJeNeVeuxPas, ...leReste } = tout;
return {leReste};

Laissez le LHS égal au RHS, ceQueJeNeVeuxPas est exclu du leReste en raison de l'unicité des propriétés dans un objet évalué lors de la propagation. Par conséquent, leReste est un objet sans la propriété indésirable.

0voto

Ash Clarke Points 1625

Voici une idée alternative. Utiliser l'id comme clé dans un objet :

var data = {};

$("#btn").click(function(){
    total++;
    data[total] = {
        cell: [
            "val1",
            "val2",
            "val3"
        ]
    };
});

Ensuite, pour supprimer l'objet avec cet id spécifique, vous pouvez faire :

delete data[id];

ou

data[id] = null;

pour simplement le mettre à null.

De cette façon, vous éliminez la complexité d'avoir également un tableau là-bas.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X