mongodb中的INET_ATON()等效于什么?我正在使用带有mongodb的nodejs,所以如果nodejs中的等价物是可用的而不是足够好的话。等效于mongodb中的INET_ATON()
4
A
回答
2
这里是别人的从点分十进制字符串转换的IP地址为32位数字解决方案:
function dot2num(dot)
{
var d = dot.split('.');
return ((((((+d[0])*256)+(+d[1]))*256)+(+d[2]))*256)+(+d[3]);
}
6
// ip example: 192.168.2.1
function inet_aton(ip){
// split into octets
var a = ip.split('.');
var buffer = new ArrayBuffer(4);
var dv = new DataView(buffer);
for(var i = 0; i < 4; i++){
dv.setUint8(i, a[i]);
}
return(dv.getUint32(0));
}
// num example: 3232236033
function inet_ntoa(num){
var nbuffer = new ArrayBuffer(4);
var ndv = new DataView(nbuffer);
ndv.setUint32(0, num);
var a = new Array();
for(var i = 0; i < 4; i++){
a[i] = ndv.getUint8(i);
}
return a.join('.');
}
1
function inet_aton(ip){
var a = new Array();
a = ip.split('.');
return((a[0] << 24) >>> 0) + ((a[1] << 16) >>> 0) + ((a[2] << 8) >>> 0) + (a[3] >>> 0);
}
function inet_ntoa(n){
var a = ((n >> 24) & 0xFF) >>> 0;
var b = ((n >> 16) & 0xFF) >>> 0;
var c = ((n >> 8) & 0xFF) >>> 0;
var d = (n & 0xFF) >>> 0;
return(a + "." + b + "." + c + "." + d);
}
截至我的网站见下面/上面,与旧版浏览器兼容。
0
这里是Javascript中使用类型化数组的ntoa函数的一个版本。
function ntoa(ipInt) {
var buffer = new ArrayBuffer(4);
var uint8View = new Uint8Array(buffer);
var uint32View = new Uint32Array(buffer);
uint32View[0] = ipInt;
var ipSegments = [];
for (var i = 0; i < uint8View.length; i ++) {
ipSegments.push(uint8View[i]);
}
return ipSegments.join(".");
}
相关问题
- 1. INET_ATON等效于AWS Redshift
- 2. windows等价于inet_aton
- 3. 等效于MongoDB的ERD?
- 4. 用于INET_NTOA和INET_ATON的.NET等价物
- 5. PHP中的ip2long()是否等于MySQL中的INET_ATON()函数?
- 6. NOT IN(SELECT * FROM X)等效于MongoDB
- 7. mongodb num_rows等效php
- 8. 的MongoDB不等于
- 9. Elasticsearch中的$ in(在mongodb中)等效于什么?
- 10. golang mongodb中的Transact-SQL等效集合
- 11. 等效于MongoDB查询中的JavaScript非严格比较
- 12. MongoDB + node.js - SQL选择等效
- 13. MongoDB存储过程等效
- 14. 等效于javascript中的browserField.displayContent()
- 15. 等效于Android中的arc4random()
- 16. 等效于Python中的createDataPartition
- 17. R中的method_missing等效于
- 18. 等效于.NET中的NSOperationQueue
- 19. 等效于Sybase中的sp_executesql
- 20. 等效于R中的matlab'ans'
- 21. 等效于drracket中的“pass”
- 22. 等效于WPF中的TransparencyKey
- 23. 等效于Java中的memcmp()?
- 24. 等效于'@ECHO ON'的Unix等效
- 25. 等效于OpenSSL的
- 26. 等效于Java的
- 27. 等效于Java的
- 28. 等效于XPath的
- 29. 等效MongoDB中查找({})春季数据
- 30. 等效于WM_MOVE
您可能还想考虑IPv6支持:'inet_pton' – WiredPrairie
对于nodejs,看起来您可以使用此模块。 https://www.npmjs.com/package/inet –