Даже не представляю, что это за книга...
Вы создаете массив
var bestAlbumsByGenre = []
Далее вы первым элементом присваиваете СТРОКУ
bestAlbumsByGenre [0] = "Country"
А далее вы строке присваиваете новое значение под индексом 0
bestAlbumsByGenre [0][0] = "JohnyCash"
Результатом bestAlbumsByGenre[0][0] будет буква С (нулевой элемент нулевого элемента массива bestAlbumsByGenre, то есть первая буква строки Country), а вы вместо нее присваиваете еще строку — так у нас не принято, так не работает
Если вы ходите, чтобы это работало, то это должен быть либо объект
var bestAlbumsByGenre = {
"Country": ["JohnyCash", "PatsyChine"],
"Rock": []
}
либо массив вместо строки
bestAlbumsByGenre [0] = []
bestAlbumsByGenre [0][0] = "JohnyCash"