new Function() !!!> Информацию по объекту Function нашла. Все вроде бы понятно.
Функция -- один из базовых объектов языка. Как любой другой базовый объект, функция может быть создана конструктором или записана как литерал. Сравни
a=new Array(1,2,3) и a=[1,2,3] a=new Object() и a={b:1} a=new Function("...") и a=function(){...}
Функция в джаваскрипте -- объект "первого класса", т.е. ее можно присваивать, передавать как параметр итп.
Разница между конструктором и литералом довольно тонкая, но существенная. Попробуйте понять, что и почему происходит в этом примере:
<button id=b1></button> <button id=b2></button> <script> window.onload=function() { .var temp='aga!'; .b1.onclick=new Function("alert(temp)"); .b2.onclick=function(){alert(temp)} } </script>
При прочих равных следует всегда использовать литерал, а не конструктор. |