gpt4 book ai didi

javascript检查元素是否包含数组的某些部分

转载 作者:可可西里 更新时间:2023-11-01 02:54:29 25 4
gpt4 key购买 nike

我有一个这样的数组

var ALLOW_SUBNET = ['192.168.1.', '192.168.2.', '192.168.3.' , '192.168.4.'];

并且我可以使用我自己的函数获取PC客户端的IP地址:

getIPClient()
var ipclient = input.getIPClient();

我的问题是如何检查客户端 IP 是否在我允许的子网内,我尝试使用 indexOf() 函数,但结果是错误的。例如:

if IP Client is 192.168.1.115 => allow

if IP Client is 192.168.5.115 => deny.

最佳答案

你可以使用 Array#some并检查 ALLOW_SUBNET 的一部分是否在 ip0 位置。

function check(ip) {
return ALLOW_SUBNET.some(function (a) { return !ip.indexOf(a); });
}

var ALLOW_SUBNET = ['192.168.1.', '192.168.2.', '192.168.3.', '192.168.4.'];

console.log(check('192.168.1.115'));
console.log(check('192.168.5.115'));

ES6 与 String#startsWith

function check(ip) {
return ALLOW_SUBNET.some(a => ip.startsWith(a));
}

var ALLOW_SUBNET = ['192.168.1.', '192.168.2.', '192.168.3.', '192.168.4.'];

console.log(check('192.168.1.115'));
console.log(check('192.168.5.115'));

关于javascript检查元素是否包含数组的某些部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39264781/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com