我正在尝试仅使用值构建一个javascript数组,但是我的数据不断被引用,我不明白如何不发生这种情况。
我收集我可能会将数据作为字符串而不是对象推送,但我不确定如何做到这一点并仍然得到我想要的结果。
我的代码
var $coordinates = [] ;
var $newCoords = '[' + $long + ',' + $lat + ']' ;
$coordinates.push( $newCoords ) ;
预期结果
[[52.7718663,-1.1964961], [52.7704243,-1.1960509], [52.7702679,-1.1958254], [52.7717278,-1.1961103], [52.7705612,-1.1957975], [52.7710724,-1.1958186], [52.7721671,-1.1964786], [52.7704262,-1.1959578], [52.8963141,-1.2654371], [52.8963454,-1.2652917], [52.8963452,-1.2652924], [52.8028284,-1.6005342], [52.9819934,-1.4555365], [52.7702942,-1.1959922]]
实际结果
"[52.7718663,-1.1964961]", "[52.7704243,-1.1960509]", "[52.7702679,-1.1958254]", "[52.7717278,-1.1961103]", "[52.7705612,-1.1957975]", "[52.7710724,-1.1958186]", "[52.7721671,-1.1964786]", "[52.7704262,-1.1959578]", "[52.8963141,-1.2654371]", "[52.8963454,-1.2652917]", "[52.8963452,-1.2652924]", "[52.8028284,-1.6005342]", "[52.9819934,-1.4555365]", "[52.7702942,-1.1959922]"]
答案 0 :(得分:3)
不要使用引号。如果你使用
var $coordinates = [] ;
var $newCoords = [$long, $lat];
$coordinates.push( $newCoords ) ;
你没事。
编辑:添加Aloso的观点,你不应该这不是用{开始变量的最佳做法{1}}在javascript中,所以我真的建议使用
$
代码。