我是javascript的新手,我怎么能用for循环编写呢?
SortingPageAudio.prototype.cardAudios = function(cardNumber) {
var page = tabs.page;
var card1Audio = page.card1Audio;
var card2Audio = page.card2Audio;
var FRcard1Audio = card1Audio.replace("e_", "f_");
var FRcard2Audio = card2Audio.replace("e_", "f_");
if(cardNumber == '1')
{
playAudio.playFiles(FRcard1Audio));
}
else if(cardNumber == '2')
{
playAudio.playFiles(FRcard2Audio));
}
};
答案 0 :(得分:4)
我不认为需要循环,因为该功能可以是卡1或卡2.如果您希望代码重复性较低,则可以执行此操作:
SortingPageAudio.prototype.cardAudios = function(cardNumber) {
var cardAudio = tabs.page["card" + cardNumber + "Audio"];
var FRcardAudio = cardAudio.replace("e_", "f_");
playAudio.playFiles(FRcardAudio);
};
在JavaScript中,您可以使用点表示法和属性名称文字(obj.foo
)引用属性,或使用括号表示法和属性名称 string ({{1} })。在后一种情况下,字符串可以是任何表达式的结果。
如果你想为这两张卡打电话obj["foo"]
,你可以这样做:
cardAudios
(其中[1, 2].forEach(instance.cardAudios, instance);
是instance
个实例。)
或者使用简单的SortingPageAudio
循环:
for
当然还是:
var card;
for (card = 1; card <= 2; ++card) {
instance.cardAudios(card);
}