Plus rapide et plus courte, afin de vérifier si un cookie existe
Quelle est la plus courte et la plus rapide façon de savoir si un cookie a une valeur ou existe?
Je suis en utilisant cela pour savoir si existe:
document.cookie.indexOf('COOKIENAME=')== -1
Cela pour savoir si a une valeur
document.cookie.indexOf('COOKIENAME=VALUE')== -1
Mieux? Aucun problème sur cette méthode?
"A une valeur" comme dans "a une valeur" ou "a exactement cette valeur"?
Je vais le nom de mon cookie,
Eh bien, indexOf serait seulement une évaluation correcte si vous cochez la case pour le confinement d'une Chaîne de caractères dans un cookie, il ne correspond pas à un nom complet, dans ce cas, le ci-dessus serait de retour
Ne pourrait-il pas être le document.cookie.indexOf('COOKIENAME=') != -1 si nous voulons vérifier si un cookie existe que de nom..
Je vais le nom de mon cookie,
MYCOOKIENAME
, et de lui donner une valeur de VALUES
. Que pensez-vous qui va se passer?Eh bien, indexOf serait seulement une évaluation correcte si vous cochez la case pour le confinement d'une Chaîne de caractères dans un cookie, il ne correspond pas à un nom complet, dans ce cas, le ci-dessus serait de retour
false
donc de vous donner le mauvais résultat.Ne pourrait-il pas être le document.cookie.indexOf('COOKIENAME=') != -1 si nous voulons vérifier si un cookie existe que de nom..
OriginalL'auteur Martin Borthiry | 2012-12-06
Vous devez vous connecter pour publier un commentaire.
Je suggère d'écrire une petite fonction d'assistance pour éviter ce zzzzBov mentionnées dans le commentaire
Cependant, ce qui semble être un peu lent, afin de lui donner une autre approche avec les diviser
Ceux sont deux autres possibilités
Ce, en utilisant le natif de boucle forEach et en partageant le cookie tableau
Et ce, à l'aide d'une vieille boucle for, qui a l'avantage d'être en mesure de retour anticipé la boucle for si un cookie est trouvé
De prendre un coup d'oeil sur JSPerf les 2 derniers ne sont même pas lent et ne retourne true si il y a vraiment un cookie avec le nom ou la valeur, respectivement
J'espère que vous comprenez ce que je veux dire
vous voulez dire que si il y a un cookie nommé "MyCookieA" et cookie "CookieA", lors de la recherche pour CookieA vous voulez faire correspondre les deux d'entre eux
OriginalL'auteur Moritz Roessler
Apparemment:
Pour moi, est plus rapide, mais seulement légèrement.
Que le test indique que, de façon surprenante, c'est encore plus rapide pour diviser le biscuit en tableaux premier:
Pour moi, il n'est pas non plus, ça dépend du navigateur et de l'environnement
OriginalL'auteur Cerbrus
- Je utiliser Jquery plugin cookie pour cela.
OriginalL'auteur trante