簡體   English   中英

通過鍵JavaScript從關聯數組調用函數

[英]Call a function from associative array by key JavaScript

在JavaScript中,我具有類似的函數關聯數組(例如類的靜態字段):

functions={'name': function(){},'name':function(){}};

每個函數都對數組進行處理。 我也有方法:

this.doSomethind= function(name, array){//class member

我需要調用通過名稱查找它的函數之一。

$.each(functions, function(key, value) {
                 if(key == name)
                    //here I need to call function with array as paremeter. It seems value(array); doesn't work.
                        }); 
}

抱歉,這是一個愚蠢的問題,我剛接觸JavaScript。 謝謝

如果我正確理解了您的問題,您應該可以說:

functions[name](array);

而不是$.each()循環。

嘗試這個:

value.apply(this, [array])

就您所提供的信息而言,您無法從類方法中訪問范圍之外的參數。 在您的示例中,拼寫已更正

  //'array' is undefined / out of scope
  this.doSomething = function(name,array){
    //array is defined / in scope!
   };

否則,如果您正在談論的變量數組在某個范圍的某個范圍內定義,則第一個答案將起作用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM