【发布时间】:2018-09-20 03:32:32
【问题描述】:
我有一个数组,这个数组包含有属性的对象,例如: {名称、纬度、经度}。
如果两个对象的 lat 和 lng 值相同,我必须这样做,那么我必须只在第二个对象中修改 lat 和 lng 的值,总之我必须添加一个非常小数值,因此它们是不同的。
数组示例:
var array = [
{
"id": "269849444",
"name": "Ziano Piacentino",
"lat": 45,
"lng": 9.4,
},
{
"id": "649296407",
"name": "Monte Bondone",
"lat": 46.0315,
"lng": 11.05685,
},
{
"id": "300151628",
"name": "Cima Calisio",
"lat": 46.0977158258,
"lng": 11.1443512052,
},
{
"id": "266239592",
"name": "Trient, Trentino-Alto Adige, Italy",
"lat": 46.0667,
"lng": 11.1333,
},
{
"id": "130313194355778",
"name": "Monte Celva",
"lat": 46.0695882,
"lng": 11.1783065,
},
{
"id": "217942785",
"name": "Trento, Italy",
"lat": 46.0667,
"lng": 11.1333,
},
{
"id": "478657266",
"name": "Mercatino di Natale a Levico Terme città da amare",
"lat": 46.0099217576,
"lng": 11.3052625593,
},
{
"id": "288554028181059",
"name": "Fontana Del Nettuno, Trento",
"lat": 46.0675553413,
"lng": 11.1213752236,
},
{
"id": "252747884",
"name": "Duomo di Milano - Milan Cathedral",
"lat": 45.4646680426,
"lng": 9.1904055604,
},
{
"id": "213183830",
"name": "Piacenza",
"lat": 45.0167,
"lng": 9.66667,
},
{
"id": "213183830",
"name": "Home",
"lat": 45.0167,
"lng": 9.66667,
}
];
有什么建议吗? 即使我认为唯一的解决方案是使用双精度。
【问题讨论】:
-
尝试做一些工作,编写自己的代码并展示它。例如,您可以从第二个循环上的循环开始以比较 lat 和 lng。
-
浮点数通常不一样。
标签: javascript arrays object functional-programming reduce