JavaScript에서 쿠키 읽기: 효율적이고 브라우저 간 호환 가능한 솔루션
독립 실행형 JavaScript 스크립트로 작업할 때 코드를 최적화하는 것이 중요합니다. 크기와 신뢰성을 위해. 일반적인 작업은 쿠키를 읽는 것이며, 이는 다양한 방법을 사용하여 수행할 수 있습니다. 그러나 가장 짧고 효율적인 솔루션을 찾는 것은 어려울 수 있습니다.
quirksmode.org의 readCookie() 함수
QuirksMode.org readCookie() 메서드가 인기 있는 선택입니다. 그러나 크기와 미적 측면에서 제한이 있습니다.
function readCookie(name) { var nameEQ = name + "="; var ca = document.cookie.split(';'); for(var i=0;i < ca.length;i++) { var c = ca[i]; while (c.charAt(0)==' ') c = c.substring(1,c.length); if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length); } return null; }
jQuery.cookie의 read_cookie() 함수
jQuery.cookie는 더 간결하면서도 효율적인 방법을 사용합니다. :
function read_cookie(key) { var result; return (result = new RegExp('(?:^|; )' + encodeURIComponent(key) + '=([^;]*)').exec(document.cookie)) ? (result[1]) : null; }
최적화된 솔루션: getCookieValue() 함수
그러나 더 짧고 안정적이며 성능이 뛰어난 솔루션을 사용할 수 있습니다.
const getCookieValue = (name) => ( document.cookie.match('(^|;)\s*' + name + '\s*=\s*([^;]+)')?.pop() || '' )
이 함수는 정규 표현식을 활용하여 제공된 쿠키 이름과 관련된 값을 추출합니다. 벤치마크에서 볼 수 있듯이 이전 방법보다 빠르고 간결합니다.
https://jsben.ch/AhMN6
접근 방법에 대한 참고 사항
이 정규식 방법은 가장 짧은 기능을 달성할 뿐만 아니라 document.cookie 문자열의 잠재적인 불일치도 해결합니다. 공식 RFC 2109에서는 세미콜론 뒤의 공백이 선택 사항임을 나타내며 이 접근 방식이 이를 설명합니다. 또한 등호 앞뒤의 공백을 처리하여 쿠키 값 구문 분석의 신뢰성을 보장합니다.
위 내용은 JavaScript에서 쿠키를 읽는 방법: 가장 효율적이고 브라우저 간 호환이 가능한 솔루션은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!