javascript - 在 JavaScript 中比较位置的正确方法是什么?

标签 javascript

我跟踪了代表 CSV 和 JSON 位置的单个对象:

 "value_location1": {
  "json_lat": "-118.3844000",
  "csv_lat": "-118.3844"
   },
  "value_location2": {
  "json_lat": "-117.933122",
  "csv_lat": "-117.933122"
},

实际上,我有这些对象的145k(重要)数组,我需要找到制作value_location.csv_latvalue_location.json_lat的好方法> 平等。

如您所见,当 csv_lat - -118.3844 时,json_lat 提供 -118.3844000

两者的值与 double 相同,但与 String 不同,

高性能应该怎样实现?

最佳答案

您是否想将这些字符串转换为 float ?然后使用parseFloat() ,然后您可以将它们作为 float 进行比较 ( be aware of the rules )

value_location.csv_lat = parseFloat(value_location.csv_lat, 10);
// value_location.json_lat is the number -118.3844
value_location.json_lat = parseFloat(value_location.json_lat, 10);
// value_location.csv_lat is the number -118.3844

您是否试图删除字符串末尾多余的 0,无论冒号后面有多少位数字?如果是这样,只需在 parseFloat() 之后将它们转换回字符串

value_location.csv_lat = parseFloat(value_location.csv_lat, 10) + '';
// value_location.json_lat is the string "-118.3844"
value_location.json_lat = parseFloat(value_location.json_lat, 10) + '';
// value_location.csv_lat is the string "-118.3844"

关于javascript - 在 JavaScript 中比较位置的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17133373/

相关文章:

javascript - javascript中@符号有什么含义吗?

javascript - 切换网站的主题/css 文件

javascript - 选择框 CSS 和 HTML 的样式

javascript - 用户生成页面结构时应该如何使用AngularJS?

javascript - 使用循环简化 AngularJS 范围

javascript - Angularjs 路由和 html5

javascript - 遍历字符串并使用 javascript 添加标签

javascript - 排序javascript的元素

javascript - 将 html 表中的输入文本动态传递给 Javascript 函数

javascript - javascript中的Promise,使用$q.defer后函数没有执行