js 子网掩码计算ip
时间: 2023-08-27 17:07:04 浏览: 48
可以使用以下 JavaScript 代码来计算 IP 地址的子网掩码:
```javascript
function calculateSubnetMask(ipAddress, subnetBits) {
const subnetMask = [];
for (let i = 0; i < 4; i++) {
let octet = 0;
if (subnetBits >= 8) {
octet = 255;
subnetBits -= 8;
} else if (subnetBits > 0) {
octet = Math.pow(2, 8 - subnetBits) - 1;
subnetBits = 0;
}
subnetMask.push(octet);
}
const ipOctets = ipAddress.split('.');
const subnetMaskIp = subnetMask.map((octet, index) => {
return parseInt(ipOctets[index]) & octet;
});
return subnetMaskIp.join('.');
}
// 示例用法
const ipAddress = '192.168.1.100';
const subnetBits = 24;
const subnetMask = calculateSubnetMask(ipAddress, subnetBits);
console.log(subnetMask); // 输出结果为 "192.168.1.0"
```
其中 `ipAddress` 是 IP 地址,`subnetBits` 是子网掩码的位数。这个函数会返回一个字符串,表示计算出的子网掩码。