【发布时间】:2018-08-09 10:49:08
【问题描述】:
我正在编写一些脚本来操作 package.json 中的包版本。我发现痛苦的事情是比较版本。现在,我将它们表示为字符串,并有一些特殊的函数来比较它们,这看起来很傻。
例如: “3.1.1”和“3.1.11”
那么,在 JavaScript 中表示它们的正确数据结构是什么?
【问题讨论】:
标签: javascript data-structures
我正在编写一些脚本来操作 package.json 中的包版本。我发现痛苦的事情是比较版本。现在,我将它们表示为字符串,并有一些特殊的函数来比较它们,这看起来很傻。
例如: “3.1.1”和“3.1.11”
那么,在 JavaScript 中表示它们的正确数据结构是什么?
【问题讨论】:
标签: javascript data-structures
将它们存储为字符串是最有意义的。这是一个格式良好的字符串,机器可以根据需要轻松解析(类似于 JSON)。
如果您在 Google 上搜索“JS 比较语义版本”之类的内容,您会发现一些库会在比较字符串之前对其进行解析。将版本存储为字符串似乎是推荐的数据结构。
【讨论】:
版本比较类似于IP地址比较。参考 this IP 地址比较问题。
【讨论】: