首页 > 解决方案 > 如何使用 JavaScript 从脚本标签中选择声明的变量

问题描述

请你帮助我好吗?我在脚本标记内有以下四个声明的变量(在html页面中。它们是由python中的folium随机生成的。我想从另一个js文件中选择最后一个但没有成功。我试过了

window.onload = function() {
    for (var  name in this){
      if(Object.keys({name})[0].includes("layer"){
          alert (name)
      }
    }

};

这是html页面中脚本标签内声明的变量

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,
            },
        };

标签: javascripthtmljquerydjangoajax

解决方案


if (name.includes("layer")) {

会做的伎俩。

var circle_f3a483b3a7ba46748ac935d3995f4f6b = {
  foo: "bar"
};
var circle_a01d1791063145b18b439bd7687bc97f = {
  foo: "bar"
};
var layer_control_aec3ac6e0e424b74a19b4c9d1c78ffeb = {
  foo: "bar"
};

window.onload = function() {
  for (var name in this) {
    if (name.includes("layer")) {
      console.log(name , "=" , this[name])
      for(let key in this[name]) {
        console.log('key', key, 'value', this[name][key])
        
      }
    }
  }

};


推荐阅读