[英]Is it possible to use a variable as a function name
我有一個上下文菜單,返回單擊作為變量值的菜單項,如下所示。
var m = key;
例如,變量可以是我編程的任何東西; 編輯,剪切,粘貼或任何我想要的東西。
是否可以將此變量用作函數名稱? 例如:function m()其中m可以是變量的內容。
任何建議將不勝感激。
謝謝
克里斯
您可以使用所需的函數創建一個對象,然后使用該變量來調用這些函數:
var funcs = {
"cut": function(){
console.log("Cutting");
},
"paste": function(){
console.log("Pasting");
}
};
var m = "cut";
funcs[m]();
當然可以!
var onComplete = fadeOut;
function fadeOut(){
$(this).animate({
opacity: "0"
},400);
}
巧合的是,你也可以用這種方式偽造類。
function myClass(){
this.publicVar = "" //<-- this is a public var
var privateVar = ""; //<-- this is private
this.myPublicMethod = myPublicMethod;
function myPublicMethod(){ // <-- public because of the line above
}
function _myPrivateMethod(){ // <-- if just this it's private
}
}
function my_generic_function(m) {
switch (m) {
case "cut":
console.log("cutting");
break;
case "copy":
console.log("copying");
break;
default:
return false;
}
}
var m = "cut";
my_generic_function(m);
var m = "copy";
my_generic_function(m);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.