【问题标题】:Number being returned as NaN after computation计算后以 NaN 形式返回的数字
【发布时间】:2018-07-24 13:14:28
【问题描述】:

我有这个代码序列:

  ...

  console.log(place.geometry.location.lat() + " lrdrdr " + place.geometry.location.lng());
  var lat = place.geometry.location.lat();
  var lon = place.geometry.location.lng();

  write_points(lat, lon, const_lat, const_lon);
}

function write_points(starting_lat, starting_lon, constant_lat, constant_lon) {
  var counter = 1;
  for (var i = 1; i < 6; i++) {
    var starting_lon_var = starting_lon + constant_lon * (i * Math.random());
    console.log(starting_lat + " lahdeedah " + starting_lon_var);

    ...

这是控制台输出:

42.247865 lrdrdr -71.17272600000001
42.247865 lahdeedah NaN

为什么lrdrdr (-71.17272600000001) 之后的值在被调用的write_points 函数中变成了NaN。我将它作为参数 (starting_lon) 传递,它会通过 starting_lon + constant_lon * (i * Math.random()) 计算,然后当它输出时,由于某种原因它会给出 NaN

【问题讨论】:

  • 你在哪里定义了const_lon
  • 我最终也有过这样的想法并想通了......这是导致问题的 const_lon 定义
  • 为你高兴 :)

标签: javascript numbers coordinates google-places-api nan


【解决方案1】:

检查所有变量的另一种情况 - const_lon 被创建为 NaN,因为它的计算涉及另一个变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-30
    • 2012-10-11
    • 1970-01-01
    • 2021-12-11
    • 2015-11-26
    • 2017-11-21
    相关资源
    最近更新 更多