Боковое смещение каретки
А кто на собеседовании джейсона распарсить не смог? А в яваскрипт сразу бы получилось!
Я не смог, потому что не смог распознать, где там начало массива и с какого элемента парсить начинать. Вообще говоря, скормленная опубликованная джейсонка выдаёт многократно вложенный объект, в котором массив начинается почему-то лишь где-то с 3-4 уровня вложенности. Правильно парсить такое - сразу указать на свойство-массив и парсить с него. Но это я должен был всё понять прямо во время собеса, где парсинг такой джейсонки - лишь малая часть задания.
Т.е. да, если бы знал заранее, распарсил бы. Как я сказал, я почти всегда работал со своими джейсонками, и сама нотация, и как там файл устроен, меня не интересовало. Библиотека сериализовывала мой графы объектов и десериализовывала их. Исследовать получающиеся при этом джейсонки мне было незачем... Лишь раз я работал с чужой джейсонкой, и хрен в ней поймёшь, что и где - эта нотация JSON вообще говоря плохо читаемая неподготовленным человеком. Но там я довольно долго провозился, пока не пришёл к сказанному выше выводу - есть нужен лишь кусок, то ищешь элемент по имени и парсишь с него. Это мне и нужно было сделать.
У меня только один вопрос. В JSON применяется нотация самого JS - т.е. прямо в коде JS можно описать граф объектов нотацией JSON? Например, можно в коде JS взять и инициализировать массив массивом из JSON безо всяких преобразований? Т.е. просто присвоить массиву из JS массив из JSON? Ну как в C# я создаю любой граф объектов и массивов на самом C#, безо всяких дополнительных C# object notation, и затем могу любой элемент оттуда присвоить любой другой переменной, созданной на Шарпе (с учётом типов, конечно).