Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 从变量切换函数_Javascript_Function_Var - Fatal编程技术网

Javascript 从变量切换函数

Javascript 从变量切换函数,javascript,function,var,Javascript,Function,Var,假设我有函数x.a()和x.b()。我想决定哪个函数执行vía变量,但它没有按我的方式工作。这是我的密码,希望你能帮我 var x = { y: function(f, g){ f(g); } a: function(txt){ console.log(txt); }, b: function(txt){ console.error(txt); } } 所以当我调用x.y(“a”,“一些文本”)它

假设我有函数
x.a()
x.b()
。我想决定哪个函数执行vía变量,但它没有按我的方式工作。这是我的密码,希望你能帮我

var x = { 
    y: function(f, g){
        f(g);
    }
    a: function(txt){
        console.log(txt);
    },
    b: function(txt){
        console.error(txt);
    }
}
所以当我调用
x.y(“a”,“一些文本”)它的作用与我调用
x.a(“一些文本”)的作用相同


谢谢

使用括号按名称访问对象的属性:

var x = { 
    y: function(f, g) {
        this[f](g);
    },
    a: function(txt) {
        console.log(txt);
    },
    b: function(txt) {
        console.error(txt);
    }
};

在声明
y
之后,OP代码和您的代码都缺少一个逗号(请记录,我不是下一个投票人)。@minitech可能下一个投票人更愿意在声誉受到打击的情况下使用cop,而不是编辑您的帖子来添加逗号(如果这是原因的话)。