填充JavaScript变量检查未定义的变量?

时间:2019-05-20 10:09:43

标签: javascript

我正在使用PHP从数据库中获取大量标记,根据它们的类型,我将它们放置在覆盖层中。但是,当叠加层没有任何标记时,我的代码将无法正常工作。

var overlays = {
                    "Markers 1": markers1,
                    "Markers 2": markers2,
                    "Markers 3": markers3,
                    "Markers 4": markers4
                    };

例如,我当前的sql查询未返回任何类型为3的标记,并且我收到了错误消息:

 markers3 is not defined

设置变量叠加层的正确方法是什么?

[编辑] 我正在使用一个简单的php / mysql循环来获取每种标记类型

 if($wpdb->num_rows > 0){
        $return .= "\r\nvar markers".$typeID['typeID']." = L.featureGroup();\r\n";
        }

1 个答案:

答案 0 :(得分:1)

我假设您通过在php中回显标记来填充标记。如下将“默认”值替换为所需的任何对象。

var overlays = {
                    "Markers 1": typeof(markers1)==="undefined"? "Default": markers1,
                    "Markers 2": typeof(markers2)==="undefined"? "Default2": markers2,
                    "Markers 3": typeof(markers3)==="undefined"? "Default3": markers3,
                    "Markers 4": typeof(markers4)==="undefined"? "Default4": markers4
                    };