Javascript/MaxMSP - Новое в javascript, создание циклов
Я использую приведенный ниже код js, чтобы сделать следующее:
- Посмотрите, существуют ли какие-либо объекты с именем.varname
- Удалите их, если они это сделают
- Создавать новые с определенным.varname
- Соедините объекты вместе
Код работает для одной итерации, но я бы хотел настроить цикл, чтобы он повторял функцию от значения 1 до значения глобальной переменной (g.channelcount) включительно.
Любая помощь приветствуется!
function bang(){
g.channelCount = buff.channelcount();//gets buffer channel count
var deleteWaveform = this.patcher.getnamed("waveform");//delete waveform and fromsymbol objects
var deleteSymbol = this.patcher.getnamed("symbol");
this.patcher.remove(deleteWaveform);
this.patcher.remove(deleteSymbol);
var waveform = this.patcher.newdefault(96, 756, "waveform~");//creates new waveform and fromsymbol objects and gives them a scripting name
var symbol = this.patcher.newdefault(186, 698, "fromsymbol");
waveform.varname = "waveform";
symbol.varname = "symbol";
post(g.channelCount);
var jsBox = this.patcher.getnamed("js_wave");//connects the objects together
this.patcher.connect(jsBox, 0, waveform, 0);
this.patcher.connect(jsBox, 1, symbol, 0);
this.patcher.connect(symbol, 0, waveform, 0);
outlet(1, "name loop");//loads the loop buffer into the waveform object
}
}
0 ответов
Как упоминалось в @FrostyZombi3, вы можете сделать это с помощью цикла for:
var channelCount = buff.channelcount();
for (var channel = 1; channel <= channelCount; channel++) {
post(channel, '\n');
// do the delete/create work using the channel variable
}