如何使用JavaScript获取以单词开头的所有cookie?
如何获取包含所有Cookie名称的数组(以如何使用JavaScript获取以单词开头的所有cookie?,javascript,cookies,Javascript,Cookies,如何获取包含所有Cookie名称的数组(以word开头)?试试这个 function getCookie(cname) { var name = cname + "="; var ca = document.cookie.split(';'); for (var i = 0; i < ca.length; i++) { var c = ca[i];
word
开头)?试试这个
function getCookie(cname) {
var name = cname + "=";
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);
if (c.indexOf(name) === 0) return c.substring(name.length, c.length);
}
return "";
}
函数getCookie(cname){
变量名称=cname+“=”;
var ca=document.cookie.split(“;”);
对于(变量i=0;i
然后,您应该能够使用getCookie(name),并且它应该返回一个包含cookie的字符串。然后对返回的值使用split来获取数组。
希望这对您有用。完全功能性方法:
document.cookie.split(';').filter(function(c) {
return c.trim().indexOf('word') === 0;
}).map(function(c) {
return c.trim();
});
附说明:
//Get a list of all cookies as a semicolon+space-separated string
document.cookie.split(';')
//Filter determines if an element should remain in the array. Here we check if a search string appears at the beginning of the string
.filter(function(c) {
return c.trim().indexOf('word') === 0;
})
//Map applies a modifier to all elements in an array, here we trim spaces on both sides of the string
.map(function(c) {
return c.trim();
});
ES6:
document.cookie.split(';')
.filter(c => c.startsWith('word'));