• Как получить текст кода функции свойства объекта JavaScript?

    @Emulyator Автор вопроса
    Объекты представляют собой экземпляры с++ классов "проброшенные" в яваскрипт посредством QJSEngine. Для пользователя они представлены графически в виде квадратиков, которые можно выделять и просматривать их свойства в отдельной форме. В этой же форме можно задавать формулы для свойств, добавлять и удалять свойства. Например, юзер вводит в поле свойства с именем "pr" для объекта "Obj1" формулу "2+2", и программа (через eval("Object.defineProperty(...") обновляет в контексте яваскрипта свойство для этого объекта, далее вызывается пересчет свойств значений у других объектов которые возможно ссылаются на измененное свойство. Вся эта созданная юзером система сохраняется в JSON в файлик, для последующей загрузки. Как раз для сохранения я предполагал прямо в яваскрипте пробежаться во всем объектам и их свойствам, заполняя JSON строку.
  • Как получить текст кода функции свойства объекта JavaScript?

    @Emulyator Автор вопроса
    для быстрых тестов использую TypeScript в Visual Studio Code с включенным флагом allowJs, но по факту это будет плагин на Qt с поддержкой пользовательских скриптов к стороннему приложению , так что все не просто, и твой ответ наводит на мысль что все это стоит еще хорошенько протестировать. )
    Т.к. внутренние тексты свойств-функций будут писать пользователи на этапе выполнения программы, то желательно максимально упростить синтаксис, потому остановился на свойствах, к которым можно обращаться без скобок. Свойства добавляются/удаляются пользователем, ссылаются друг на друга в своем коде, потому нужна динамика, ну и сохранение(восстановление) в файл.
  • Как получить текст кода функции свойства объекта JavaScript?

    @Emulyator Автор вопроса
    у меня консоль выдает
    [Function]
    возможно есть различия в реализации наших яваскриптовых движков.
  • Как получить текст кода функции свойства объекта JavaScript?

    @Emulyator Автор вопроса
    Спасибо! Очень выручили.
    Необходимо сохранять в файл(и восстанавливать) введенные пользователями выражения(свойства объектов), которые могут ссылаться свойства других объектов(и т.п.). Можно конечно все реализовать через с++, но хочется рассмотреть разные варианты и выбрать оптимальный. Наткнулся на яваскриптовый из коробки JSON.stringify, даже нашел в инете вариант сохраняющий функции, но вот с "вычисляемыми" свойствами возникла проблемка.