javascript eval и оценка объекта

У меня есть часть инфраструктуры отладки, которая должна быть в состоянии запустить объекты eval времени.

В частности, если у меня есть такая строка"{a: 1, b:2}" это должно оценить это в объект с членамиa а такжеb с этими ценностями. Однако, если я сделаюeval("{a: 1, b:2}") кажется, что это оценивается как утверждение и что-то говорит о нелегальном лейбле.

Я взломал его так, чтобы он оценил так:

eval("var x=" + str + "; x;");

который, кажется, работает, но кажется ужасным взломом. Любые предложения о том, как сделать это лучше?

(Кстати, я знаю об опасностях eval, но это часть инфраструктуры отладки, которую не увидят реальные пользователи.)

Ответы на вопрос(1)

Ваш ответ на вопрос