js 对ip地址进行排序

Posted 前端小猪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js 对ip地址进行排序相关的知识,希望对你有一定的参考价值。

这里用到一个技巧 padStart(a,b)方法,对字符串进行补全。两个参数,第一个是字符串的最终长度,第二个是用于补全的字符串。还有一个类似的padEnd方法,一个由前补全,一个由后补全。

'x'.padStart(8,'abc')
"abcabcax"
'09-12'.padStart(10, 'YYYY-MM-DD') // "YYYY-09-12"
"YYYY-09-12"

例子

var ip = ['192.165.2.3','192.164.2.3','192.165.52.3','102.165.2.3','192.165.2.63','192.15.2.53']
var newIp = ip.sort((a,b)=>
	const ip1 = a.split('.').map(e=>e.padStart(3,'0')).join('')    
	const ip2 = b.split('.').map(e=>e.padStart(3,'0')).join('')    
	return ip1 - ip2
)

newIp   ["102.165.2.3", "192.15.2.53", "192.164.2.3", "192.165.2.3", "192.165.2.63", "192.165.52.3"]

以上是关于js 对ip地址进行排序的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 c# 对 IP 地址列表进行排序

Python对IP地址列表排序对列表进行去重

如何在 Python 中对存储在字典中的 IP 地址进行排序?

在你的盒子上打印一个打开的连接列表,并根据IP地址对它们进行排序

JavaScript按IP地址排序

从 Apache 日志中排序 uniq IP 地址