The alltones array contains all the possible notes in music scale.

var alltones = ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B" ];


I want to take the user's input of a tone, and then construct a list that contains certain elements of the array.

Say I start at alltones[5] or "F", and want to take every second element of the array from that point and put it into my list, until I get back around to "F". The array is more like a circle than straight list. I'm a little unsure of how the array operates once the loop reaches the last element.

Do I approach the problem by generating a new array, based on the users input. Or is there a way that JavaScript knows to loop back to the start of an array once it reaches the end such that it treats the array like a circle?

An example:
User input = F 
The output that I am seeking is to count (every two items) from F until we get back around the array to F
so the desired output would be => F G A B C# D#


Question: Where is my power going?
Answer: Thanks to everyone that responded. The insight has been tremendously useful. 

While I am not 100 percent sure I believe I tracked down the culprit.  Our drier had been taking longer to dry than normal the last couple months.

When I went to test it for usage I didnt verify that it was getting hot. It wasn't, which skewed my numbers. Turned out that I needed to replace the internal thermostats. A change in the duty cycle and length running of that device would explain a large shift in out bill, especially considering our lifestyle generates a lot of laundry.