2 votes

Comment puis-je tester la valeur de localStorage dans cet exemple ?

Quand je le fais localStorage.getItem('user'); Je reçois cela comme une valeur :

{
    "userDetails": {
        "gender": "",
        "language": "de",
        "color":
      }
}

Je dois faire correspondre ma logique à la language valeur. Par exemple, si "language": "de" faire quelque chose, si "language": "en" faire autre chose.

Comment puis-je faire correspondre la valeur de la clé dans mon exemple ?

Merci.

5voto

T.J. Crowder Points 285826

getItem retournera un string donc la première chose à faire est de l'analyser :

var data = JSON.parse(localStorage.getItem("user"));

En supposant que vos données sont des JSON valides (le texte de la question ne l'est pas mais semble être censé l'être, il manque une valeur pour "color": ), qui renverra les données analysées.

Maintenant vous avez un objet avec une propriété appelée userDetails qui, à son tour, possède une propriété appelée language Vous pouvez donc y accéder via data.userDetails.language peut-être dans un switch :

switch (data.userDetails.language) {
    case "de":
        // ...
        break;
    case "en":
        // ...
        break;
}

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