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, время: 03:10. |