2016-12-05 3 views

ответ

3

Вам нужна скобка для вызова функции. В противном случае вы вернуть саму функцию, как в примере 2.

<a onclick="foo[0]()" >Alert</a> 
<!--    ^^   --> 

var foo = [ 
 
    function() { alert("Function 1!"); }, 
 
    function() { alert("Function 2!"); } 
 
];
<a onclick="foo[0]()" >Alert</a><br> 
 
<a onclick="alert(foo[0])" >Alert, what really happens without parenthesis</a>

+0

так же ясно, как нос на лице, глупо мне и спасибо много :) – SHi

1

Вы должны вызвать функцию. так как вы получаете только функцию, используя foo[0]. вам нужно вызвать их (), чтобы запустить функцию

var foo = [ 
 
    function() { alert("Function 1!"); }, 
 
    function() { alert("Function 2!"); } 
 
]; 
 
foo[0](); 
 
foo[1]();

Смежные вопросы