Задать вопрос
  • Чем заменить eval в javascript?

    @avkuz1
    код функции, который работал до обновления ПО выглядит так
    spoiler
    Utils.builder = function (name) {
        try {
            Utils.load(name);
    
            // Получаем объект
            /**
             * @type {Product}
             */
            var product = eval("new " + name + "();");
    
            // Добавить объект в очередь на построение
            Utils.object = product;
            if (Utils.buildSilent) {
                Utils.finish();
                SelectAll();
            } else {
                Utils.makeInterface();
                // После создания окна, ждем ввода данных
                Action.Continue();
                // При изменении параметров - перестраивать
                if (Product.preview) {
                    Action.Properties.OnChange = function () {
                        DeleteNewObjects();
                        product.make()
                    };
                }
            }
            return product;
        } catch (e) {
            Utils.processError(e);
        }
    };