Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 14.08.2012, 13:46
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,586

Сообщение от Maxmaxmахimus Посмотреть сообщение
короче вот так будет работать нормально, почему они так не сделали?

with(consoleProps){
    (eval('code'))
}
Потому что код эвалится в контексте вызова eval. Если они сделают так - то херня получится, ибо вызов будет в контексте браузера, а не текущего окна.
Придумать нормальный вариант наверняка можно, но скорее всего они просто не заморачивались.
__________________
29375, 35

Последний раз редактировалось Aetae, 14.08.2012 в 13:49.
Ответить с цитированием
  #12 (permalink)  
Старый 14.08.2012, 17:10
Аватар для Aetae
Тлен
Отправить личное сообщение для Aetae Посмотреть профиль Найти все сообщения от Aetae
 
Регистрация: 02.01.2010
Сообщений: 6,586

Забей. В общем твой вариант возможен, просто они поленились делать ещё одну функцию в обёртке виндоу.
В фф вообще заморочек много, потому я и тупанул чутка, а имел я виду банально:
a={
  eval: function(code){return eval( code )},
  toString : function(){return '[object A]'}
}
a.eval('alert(this)')
window.eval('alert(this)')
Но тут не тот случай.
__________________
29375, 35

Последний раз редактировалось Aetae, 14.08.2012 в 17:16.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция не возвращает false, почему? Vitaly jQuery 3 05.07.2009 16:05