【发布时间】:2021-09-02 11:06:45
【问题描述】:
你能帮帮我吗? 我在脚本标签内有以下四个声明的变量(在html页面中。它们是由python中的folium随机生成的。我想从另一个js文件中选择最后一个但没有成功。我试过了
window.onload = function() {
for (var name in this){
if(Object.keys({name})[0].includes("layer"){
alert (name)
}
}
};
这里是html页面中script标签内声明的变量
var circle_f3a483b3a7ba46748ac935d3995f4f6b = L.circle(
[-16.0, 0.0]
).addTo(feature_group_1c28eff59e394734be54cf676a09eae1);
var circle_a01d1791063145b18b439bd7687bc97f = L.circle(
[-11.3137, 11.3137],
).addTo(feature_group_1c28eff59e394734be54cf676a09eae1);
var layer_control_aec3ac6e0e424b74a19b4c9d1c78ffeb = {
base_layers : {
},
overlays : {
"Roads" : geo_json_cae0ea33c63e4c438678d293e5c32c0d,
"Intersections" : feature_group_1c28eff59e394734be54cf676a09eae1,
},
};
【问题讨论】:
-
您的搜索似乎太深了。名称将是 layer_control_... 所以你只需要
if (name.includes("layer")我会使用name.match(/layer_control_[a-f\d]+/)进行更精确的选择。 -
谢谢,它有效。我得到一个字符串类型。如何获取叠加层键值?
-
所有全局变量都存储在窗口中。
window[name]或在你的函数内部this[name]
标签: javascript html jquery django ajax