В JavaScript есть способ получить «значение» оператора таким же образом, как function() { return eval("if (true) { 1 }"); }
возвращает «1»;
function() { return if (true) { 1 } }
и все подобные перестановки, которые я пробовал, недействительны синтаксис.
Неужели eval
наделен особыми способностями определять «последнее» значение оператора в выражении?
Вариант использования — это REPL, который оценивает произвольные выражения и возвращает результат. eval работает, но я хочу обернуть его функцией.