Prima di tutto: ti ricordi come definire un nuovo metodo per anfore?
Lascia che ti rinfreschi la memoria:
anfore.nome_metodo = function(parametri) {
comando1
comando2
comando3
...
}
Tra le parentesi {...} ci vanno i comandi che vuoi
eseguire quando il metodo è invocatoNota che, in questo caso, il metodo che ti ho chiesto di
definire non dipende da alcun parametro: quando viene invocato, deve suonare le note la-si-do#-la, non c'è bisogno di dirgli altro...Ricordati come suonare una nota di frequenza f, tra
x millisecondi, usando esegui_tra:esegui_tra(x, anfore[0].suona, f)
Q: Se la frequenza del La è 440 (Hz), quella del Si (un tono sopra) è 440*(9/8), quella del Do# (un tono sopra il Sì)quale sarà?
A: Ma 440*(9/8)*(9/8), mon frere!
Ricordati di invocare il metodo, dopo averlo definito!
anfore.fj()
Ok, ti arrendi? Prova con questo:
anfore.fj = function() {
esegui_tra(0, anfore[0].suona, 440)
esegui_tra(500, anfore[0].suona, 440*9/8)
esegui_tra(1000, anfore[0].suona, 440*(9/8)*(9/8))
esegui_tra(1500, anfore[0].suona, 440)
}
anfore.fj()
Se provi a salire oltre la prima riga, vengono caricati i comandi