Вы можете изменить states
как объект как предложенный ответ или изменить его на эту форму -
var obj = {states : [
{ name: 'state1', cities : [ 'city1', 'city2'] },
{ name: 'state2', cities : [ 'city1', 'city2'] }
]}
Подумайте об этом, согласно вашей структуре, если у вас есть только объект состояния, вы не можете получить доступ к его городам, если не знаете названия штата! (Это возможно, но становится ужасно)
Это зависит от вашего варианта использования: хотите ли вы Object или Array. Объект хорош для быстрого поиска по ключам, тогда как массивы хороши для перечисления, и они поддерживают порядок. (Объекты поддерживают порядок в большинстве реализаций, но это не соответствует спецификации и, следовательно, не гарантируется.)