当前位置:  开发笔记 > 编程语言 > 正文

如何根据变量值调用javascript方法

如何解决《如何根据变量值调用javascript方法》经验,为你挑选了2个好方法。

我有方法a(),方法b()方法c().. 我将从服务器获取响应消息,其中包含a或b或c等.如果响应消息是a,那么我需要调用方法a().Tf响应消息是b,那么我需要调用方法b() ....我不想写任何if else条件或switch case来识别方法.

我不想这样做.

if(res =='a')
   a();
else if(res =='b')
   b();

而不是我需要像java中的反射之类的东西.



1> Satpal..:

如果已在Global/window Scope中定义了该函数,则可以直接使用res变量

window[res]();

否则在object中定义函数然后使用它

var obj = {
    a : function(){},
    b : function(){}
}   
obj[res]();



2> Nina Scholz..:

你可以使用一个对象并将函数存储在里面,比如

var functions = {
    a: function () {},
    b: function () {},
    c: function () {}
    default: function () {} // fall back
}

用法:

functions[res]();

或者默认

(functions[res] || functions.default)();

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有