1

我最初使用以下 jQuery 语句来查看我的 cookie 是否存在:

if (document.cookie.indexOf('cookie-foo') >= 0) {
    $("my-div").hide();
}

我现在需要包含多个 if 语句,我认为我会整理成一个数组:

var hidenfoo = ['cookie-foo', 'cookie-foo-two', 'cookie-foo-three'];
if (document.cookie.indexOf(hidenfoo) >= 0) {
    $("my-div").hide();
}

不幸的是,这不起作用。我没有收到任何语法错误,该语句根本无法解析为 true。

4

1 回答 1

1

您需要分别测试每个数组元素,而不是整个数组。您可以使用该some()方法对每个元素执行测试,如果其中任何一个为真,则返回真。

if (hidenfoo.some(cookie => document.cookie.includes(cookie))) {
    $("my-div").hide();
}
于 2020-11-30T23:49:47.247 回答