gpt4 book ai didi

javascript - 写入文件时添加了奇怪的字符

转载 作者:行者123 更新时间:2023-11-30 17:29:45 25 4
gpt4 key购买 nike

我正在将以下行作为 javascript 写入 html 文件的末尾。由于某种原因,在将 place 变量写入文件后,添加了一个新行或一些类似的字符。我不介意这一点,因为我不会查看书面脚本,但 chrome 告诉我它是一个非法字符。

写入html的代码:

map_html.write(
"geocoder.geocode( { 'address': '" + place + "'}, function(results, status) {\n\
var marker = new google.maps.Marker();\n\
marker.setPosition(results[0].geometry.location);\n\
marker.setMap(map);\n\
bounds.extend(marker.position);\n\
});\n"
)

输出:

geocoder.geocode( { 'address': 'Brooklyn, NY
'}, function(results, status) {
var marker = new google.maps.Marker();
marker.setPosition(results[0].geometry.location);
marker.setMap(map);
bounds.extend(marker.position);
});

最佳答案

将您的代码替换为:

var geo_json = JSON.stringify({ 'address': place});
map_html.write(
"geocoder.geocode(" + geo_json + ", function(results, status) {\n\
var marker = new google.maps.Marker();\n\
marker.setPosition(results[0].geometry.location);\n\
marker.setMap(map);\n\
bounds.extend(marker.position);\n\
});\n"
)

这将回避问题,并允许您查看 stringifyed json 的外观。编写自己的 json 通常不是一个好主意。让 javascript 生成 json,这很擅长。

如果这仍然导致痛苦,那么尝试 var geo_json = JSON.stringify({ 'address': place.trim()}); 这将从 的末尾去除空格放置字符串。

如果这仍然导致痛苦,那么尝试使用正则表达式来验证 place 输入。类似于 [A-Za-z_ ,]+


编辑

哦,糟糕,我在这里混淆了 javascript 和 python。

import json

geo_json = json.dumps({ 'address': place})
map_html.write(
"geocoder.geocode(" + geo_json + ", function(results, status) {\n\
var marker = new google.maps.Marker();\n\
marker.setPosition(results[0].geometry.location);\n\
marker.setMap(map);\n\
bounds.extend(marker.position);\n\
});\n"
)

关于javascript - 写入文件时添加了奇怪的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23399263/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com