return {блок}
Скажите, когда и для чего используется конструкция, где после return стоит блок?
что он возвращает и как ей пользоваться? просто (function(){ return {1} })(); выдает ошибку missing : after property id спасибо. |
фигурные скобки говорят о том что функция возвратит объект, в вашем случаем выдается ошибка из - за того, что для ключа 1 нету соответсвующего значения.
Без ошибок будет, например так: (function(){ return { 1: 1 } })(); |
ретурн не принимает блоки, по этому будет синтаксическая ошибка.
а так, блок возвращает результат последнего выполненного выражения |
Цитата:
|
Цитата:
Цитата:
Про "выражения" и "возвраты результатов" ни слова... ;) |
Цитата:
Функция может возвращать все что угодно, в частности и объект (пустой или не пустой) (function() { return {}; }());зачем вводить людей в заблуждение ?? |
Цитата:
Цитата:
alert( eval('{1+2}') ) ивал возвращает результат последнего выражения, последнее выражение это блок, блок возвращает результат последнего выражения в нем. |
var tzdragg = function() { return { startMoving : function(evt) { evt = evt || window.event; var posX = evt.clientX, posY = evt.clientY, a = $('elem'), divTop = a.style.top, divLeft = a.style.left; divTop = divTop.replace('px',''); divLeft = divLeft.replace('px',''); var diffX = posX - divLeft, diffY = posY - divTop; document.onmousemove = function(evt){ evt = evt || window.event; var posX = evt.clientX, posY = evt.clientY, aX = posX - diffX, aY = posY - diffY; tzdragg.move('elem',aX,aY); } }, stopMoving : function() { document.onmousemove = function(){} }, move : function(divid,xpos,ypos){ var a = $(divid); $(divid).style.left = xpos + 'px'; $(divid).style.top = ypos + 'px'; } } }(); ну вот например кусок кода для drag&drop, в котором это есть или я чего-то не понимаю?) |
Vampir3, да, ты не понимаешь чем обьект отличается от блока =) все просто.
|
ах, я всё понял
всё верно, это же объект |
Часовой пояс GMT +3, время: 23:53. |