0
votes

'objet' n'est jamais réaffecté. Utiliser 'const' à la place

J'ai ce morceau de code:

'sliderData' is never reassigned. Use 'const' instead.eslint(prefer-const)


3 commentaires

Vous n'êtes pas réaffecter à l'objet. La référence de SliderData est constante dans ce cas, vous ne changez que de la valeur de la propriété. Si vous passez à Const, votre programme fonctionnera OK


Est-ce que cela répond à votre question? Pourquoi puis-je modifier la valeur d'une constante en JavaScript


Votre Binding (Lire: la variable) est constante. Vous ne le modifiez pas pour pointer vers un objet différent . Vous venez de changer la forme de l'objet.


3 Réponses :


2
votes

Vous n'êtes pas réaffectant l'adresse que sliderdata stocke, vous munissez simplement cet objet.

Vous pouvez et devez utiliser const au lieu de let , car vous ne réaffectez pas la variable sliderdata . Si vous deviez écrire sliderdata = 3 , il s'agit d'une réaffectation, sliderdata.something = 3 n'est pas réaffectant.


0 commentaires

4
votes

Vous ne réaffectez pas sliderdata . Vous changez une propriété. En ce qui concerne JS qui est concerné, "attribuer" un objet ne fait jamais référence à l'utilisation de celui-ci en tant que terme gauche de l'opérateur d'affectation comme dans:

sliderdata = quelqueobject;

Donc: xxx

REMARQUE: Ceci est parce que la valeur de "sliderdata" est une référence contenant l'adresse de l'objet, pas l'objet lui-même : C'est également la raison pour laquelle l'équivalence échoue entre deux objets à moins que l'on ait été attribué à la valeur de l'autre.


0 commentaires

1
votes

Tant que vous ne réaffectant pas le sliderdata ​​code> c'est considéré comme un const. Bien que vous déclariez un objet en tant que const, vous pouvez ajouter des propriétés et modifier des valeurs. S'il vous plaît voir ci-dessous:

const car = {type:"Fiat", model:"500", color:"white"};

// You can change a property:
car.color = "red";

// You can add a property:
car.owner = "Johnson";


0 commentaires