使用带有'with`的eval

时间:2012-12-22 19:46:39

标签: javascript

我知道evalwith通常是气馁的,但暂时搁置一旁,我无法让这段代码发挥作用:

with({ a: 'hello world' }){
    var output = eval('{ text: a }')
}

我希望output成为对象

{ text: "hello world" }

output字符串'hello world'

有人能帮我看看我错过了吗?

1 个答案:

答案 0 :(得分:3)

你需要括号:

 var output = eval('({ text: a })')

参见例如Why does JavaScript's eval need parentheses to eval JSON data?