动态修改javascript对象

时间:2010-12-23 18:08:55

标签: javascript jquery json

我一直在使用Javascript和JSON对象开发我的网站。我需要动态更改javascript对象的内容,但这些都是函数。

示例:

var menu1 = [{
   'Activate': function(menuItem,menu) {
      $(this).onSelectStart = "return false";
      var layerclicked = treetag.tree('find',$(this).parent().attr('node-id'));
      if(layerclicked.checked)
         treetag.tree('uncheck',layerclicked.target);
      else
         treetag.tree('check',layerclicked.target);
   }
}];

当用户点击某个选项时,我想将名称功能从“激活”更改为“停用”。

可以吗?我怎么办?

提前致谢! :)

2 个答案:

答案 0 :(得分:2)

在我看来,您可以将“Activate”方法重命名为“Toggle”,而不是完全重命名该函数(看似是出于语义的目的)。在我看来,重命名你的功能看起来很糟糕......它是否需要插件?知道它是什么插件会很有帮助。

答案 1 :(得分:1)

你试过了吗?

menu1[0].Deactivate = menu1[0].Activate;
menu1[0].Activate = undefined;

更改功能名称的目的是什么?更改“激活”指向的功能更有意义吗?