массив alltones
содержит все возможные примечания в музыкальной шкале.Javascript looping поведение
var alltones = ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B" ];
Я хочу, чтобы пользователь вводил тон, а затем построил список, содержащий определенные элементы массива.
Say Я начинаю в alltones[5]
или "F"
и хочет взять каждый второй элемент массива с этой точкой и поместить его в свой список, пока я не вернусь вокруг "F"
. Массив больше похож на круг, чем на прямой. Я немного не знаю, как работает массив, когда цикл достигает последнего элемента.
Я подхожу к проблеме, создавая новый массив на основе ввода пользователей. Или есть способ, который JavaScript знает, чтобы вернуться к началу массива, как только он достигнет конца, так что он рассматривает массив как круг?
Пример: Пользовательский ввод = F
Выход, что я ищу, чтобы подсчитать (каждые два элемента) из F, пока мы не вернемся вокруг массива F
поэтому желаемый результат будет => FGABC# D #
Может быть по модулю индексации, что вы хотите - что-то вроде 'alltones [х% alltones.length]' – zch
Похоже, вы можете создать новый массив, используя кусочек и массив. indexOf и concat перед записью – mplungjan
Можете ли вы показать нам несколько пробных прогонов (ввод и ожидаемый результат), которые вы ищете? Это необходимо для определения того, что вы действительно хотите сделать. –