我可以在for循环内创建多个功能吗?

最佳答案

您最好将$ i作为参数传递给playound函数

var sounds = [
    new buzz.sound( "laser-01", { formats: [ "ogg", "mp3", "acc" ]}),
    new buzz.sound( "alien-noise-01", {formats: [ "ogg", "mp3", "acc" ]})
];

var playsound = function (i) {
   sounds[i].play().fadeIn().loop();
}

playsound(1);


而且,如果您确实想要playsound1()样式函数名称,则可以对其进行评估(尽管我建议不要添加此名称):

for (var i = 0; i < sounds.length; i++){
    eval('var playsound' + (i+1) + ' = function() { playsound(' + i + '); };');
}

playsound1();
playsound2();

关于javascript - for循环中的多种功能,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13676719/

10-14 14:52
查看更多