用变量调用javascript对象方法 [英] call javascript object method with a variable

查看:68
本文介绍了用变量调用javascript对象方法的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我是面向对象的javascript的新手。我有一个变量,其值我想用来调用对象的方法。喜欢这个..

i am new to object oriented javascript. I have a variable whose value i would like to use to call an object's method. like this..

var foo = {
    bar: function() {},
    barr: function() {}
}

现在有一个变量,其值可以是任何一个两个方法的名称 bar barr
i希望用类似

now there is a variable whose value can be any of the two method's names bar and barr i want to call them with something like

var myvar = 'bar';
foo.{myVar}();


推荐答案

所以我假设您要动态调用相应的函数基于字符串。你可以这样做:

So I assume you want to call the appropriate function dynamically based on a string. You can do something like this:

var myVar = 'bar';
foo[myVar]();

或者你也可以使用 eval 但这个风险较大(容易发生注射攻击)而且速度较慢(不要这样做!:P):

Or you can also use eval but this is riskier (prone to injection attack) and slower (don't do this! :P):

var myVar = 'bar';
eval('foo.' + myVar + '()');

这篇关于用变量调用javascript对象方法的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆