如何使用变量访问javascript对象方法?

时间:2011-10-04 21:34:44

标签: javascript object methods

  

可能重复:
  Get property of object in JavaScript

var Terminal = function() {
  this.walk = function() {
    alert('hello');
  }
  this.go = 'walk';
  this.move = 'walk';
}

var term = new Terminal();
var fn = 'walk';
if (term.hasOwnProperty(fn)) {
  term.{fn};
}

如何使用字符串'walk'运行方法term.walk()?

2 个答案:

答案 0 :(得分:2)

有两种方法。最简单的是

term[fn]();

或者

var funcObj = term[fn];
funcObj.apply(term);

答案 1 :(得分:1)

使用term[fn]访问<fn>的{​​{1}}属性。

可以使用term访问所有属性。可以通过object["propertyname"]调用全局定义的属性/方法。

只有一次无法通过window["propertyname"]访问变量:

obj["prop_name"]