【问题标题】:How to replace symbol from the Javascript variable [closed]如何从 Javascript 变量中替换符号 [关闭]
【发布时间】:2012-03-24 17:29:59
【问题描述】:

这是我的代码,但这不起作用。

显示以下错误:

lanlatvalue.replace 不是函数。

如何纠正?

var lanlatvalue =(25.2465,15.3686);
var latlngStrs = lanlatvalue.replace(/\(|\)/g,"").split(",",2);
var latss = parseFloat(latlngStrs[0]);
var lngss = parseFloat(latlngStrs[1]);
alert(latss+lngss);

【问题讨论】:

  • 也许对lanlatvalue 变量使用Array 以使其更易于管理:[25.2465, 15.3686],然后使用单独的longlat,但通过 访问数组索引

标签: javascript html dom-events javascript-framework


【解决方案1】:

字符串必须在 JavaScript 中引用。

var lanlatvalue = "(25.2465,15.3686)";

【讨论】:

  • 这是否正确? var lanlatvalue = ''+latlan+'';
  • 字符串"+latlan+" 与您的替换模式或拆分模式不匹配,因此当您尝试对undefined 进行parseFloat 时,脚本会出错。
  • 那么怎么做呢?任何其他方式来解决这个问题。
  • 你看:这是我的函数:function mapdetails(latlan) { //latlan=(25.213254,25.231546);// var lanlatvalue = "''+latlan+''";警报(lanlatvalue); var latlngStrs = lanlatvalue.replace(/(|)/g,"").split(",",2); var lats = parseFloat(latlngStrs[0]); var lngs = parseFloat(latlngStrs[1]);地图(lats,lngs);}
  • 我完全不知道你现在的问题是什么。问题中的代码不起作用,因为您将一个数字分配给一个变量,然后让一个数字作为表达式四处浮动,什么都不做。然后,其余代码尝试将数字视为逗号分隔的数据字符串。如果您将其设为逗号分隔的数据字符串(通过添加引号),那么它将起作用。现在您正在重新发布代码,添加没有意义的新代码,并询问“其他方式”,但您还没有说明为什么不能只修复输入以符合代码的预期。跨度>
【解决方案2】:

应该是var lanlatvalue = "(25.2465,15.3686)";(引用)。

【讨论】:

  • 这是我的代码:function mapdetails(latlan) { //latlan=(25.213254,25.231546);// var lanlatvalue = "''+latlan+''";警报(lanlatvalue); var latlngStrs = lanlatvalue.replace(/(|)/g,"").split(",",2); var lats = parseFloat(latlngStrs[0]); var lngs = parseFloat(latlngStrs[1]);地图(lats,lngs);}
【解决方案3】:

更改此行:

var lanlatvalue =(25.2465,15.3686);

var lanlatvalue ='(25.2465,15.3686)';

【讨论】:

    猜你喜欢
    • 2021-05-03
    • 2016-03-30
    • 2021-02-20
    • 2016-02-09
    • 2010-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多