0

问题。我需要创建一个名为的全局函数

layerdiable(层);

在许多情况下,这个功能就像......

layerdiable(heatmap_tree); layerdiable(heatmap_house); layerdiable(heatmap_person);

以上每个都有相关的变量

变热图树=假;var heatmap_house = 假;

等等我想做的基本上是....

函数 distroylayer(layer){
layer =! 层; }

(我想真正像....一样工作)

功能 distroylayer(heatmap_tree){
heatmap_tree !=heatmap_tree ; }

使 heatmap_tree 与其当前值相反...(应该是假的...)

4

2 回答 2

1

你不能。诸如布尔值之类的原语是按值传递的,而不是按引用传递的。

但是您不需要为此提供功能。所有你需要的是:

somevar = !somevar;

这将somevar在真假之间切换。

于 2013-03-17T22:53:31.457 回答
1

您可以将全局变量称为window对象成员:

function disableLayer(layer) {
    window[layer] = !window[layer];
}

disableLayber('heatmap_tree');
于 2013-03-17T22:53:59.760 回答