Javascript Eval в контексте без использования этого ключевого слова

Я пытаюсь выполнить Eval в определенном контексте. Я нашел ответВот полезно. Однако я получаю следующее поведение в версии Chrome 53.0.2785.143 m. Не пробовал другие браузеры. Я использую следующий код:

function evalInContext(js, context) {
    return function() { return eval(js); }.call(context);
}


console.log(evalInContext('x==3', { x : 3})) // Throws
console.log(evalInContext('this.x==3', { x : 3})) // OK

Однако я ожидал, что первый звонокevalInContext не бросать. Есть идеи, почему это может происходить?

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

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