1

我知道eval并且with通常会气馁,但暂时搁置这一点,我无法让这段代码正常工作:

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

我期待output成为对象

{ text: "hello world" }

而是output字符串 'hello world '

有人可以帮我看看我错过了什么吗?

4

1 回答 1

3

你需要在它周围加上括号:

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

参见例如为什么 JavaScript 的 eval 需要括号来评估 JSON 数据?

于 2012-12-22T19:48:45.917 回答