我正在传递类似于下面的字符串。

"Users_Controller.login"


“ Users_Controller”表示下面的对象。
并在其中“登录”方法。

var Users_Controller = ( function () {
return{

  login : function(vo, callback)
   {......}

 }
 })();


仅给出字符串作为指针,是否可以调用该方法?

最佳答案

您可以使用此功能:

function getPropertyFromString(str, start) {
    str = str.split(".");
    var prop = start || window;
    for (var i = 0; i < str.length; i++) {
        if(prop == undefined)
          return prop;
        else
          prop = prop[str[i]];
    }
    return prop;
}
getPropertyFromString("Users_Controller.login");


但是,这不允许使用括号语法。

关于javascript - 字符串表示的调用方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6941592/

10-13 04:47