jon*_*rix 1 javascript regex arrays cookies jquery
我正在构建一个电子商务应用程序,当用户将产品添加到购物篮时,其中一部分会创建一个cookie (美国英语:请阅读'购物车').应用程序的逻辑通常会为每个用户生成多个篮子(因此会生成多个cookie).每个cookie都有一个键,它始终以字符串'basket'开头,后跟一个升序整数.每个购物篮都有一个id,它是一个32个字符的字符串,存储为cookie的值.
在cookie中,用户的篮子ID存储为字符串,每个字符串都有一个名称/值对.我已设法将所有cookie名称/值对推送到一个数组中,以便该数组读取:
["mcart=537244a1377f97374fff2233cdc29bdf", " mtoken=0f9a74b73d2f29b1c6088d63b7f4f4a5c545bbe9", " mexpires=1468626166000", " basket1=aw7j0r9ke3hq8tp20egf7105dozfn13i", " basket2=kpxpdnw6nnfyvawmk7n4s7pd9meaimy7", " basket3=9264k594wi9vgfiotkvz323n35yfvkkf"]
Run Code Online (Sandbox Code Playgroud)
我创建了一个变量:
var name = 'basket';
Run Code Online (Sandbox Code Playgroud)
我的目标是使用javascript(可能是正则表达式),或者实际上是jquery来:
提前感谢社区.
var cookies = ["mcart=537244a1377f97374fff2233cdc29bdf", " mtoken=0f9a74b73d2f29b1c6088d63b7f4f4a5c545bbe9", " mexpires=1468626166000", " basket1=aw7j0r9ke3hq8tp20egf7105dozfn13i", " basket2=kpxpdnw6nnfyvawmk7n4s7pd9meaimy7", " basket3=9264k594wi9vgfiotkvz323n35yfvkkf"];
var baskets = [];
for (var i = 0; i < cookies.length; i++) {
var match = cookies[i].match(/basket\d+=(.*)/);
if (match) {
baskets.push(match[1]);
}
}
console.log(baskets);
// Output:
// [ 'aw7j0r9ke3hq8tp20egf7105dozfn13i',
// 'kpxpdnw6nnfyvawmk7n4s7pd9meaimy7',
// '9264k594wi9vgfiotkvz323n35yfvkkf' ]
Run Code Online (Sandbox Code Playgroud)