У меня есть эта функция, которая является свойством объекта,Функция Javascript всегда возвращает true?
Layer.prototype.mouseInBounds = function() {
// Return value
var ret = true;
// Layer mouse co-ordinates are not valid
if (this.mouse.x < 0 || this.mouse.y < 0 || this.mouse.x >= this.width || this.mouse.y >= this.height) {
// Set layer mouse co-ordinates to false
this.mouse.x = false;
this.mouse.y = false;
// Set return value
ret = false;
}
return ret;
};
Но когда я называю это как так из другого объекта, который имеет слой, как свойство,
this.layer.mouseInBounds() // true
Независимо от того, значение ret
внутри функции mouseInBounds
?
EDIT
Чтобы лучше понять, что мой вопрос mouse
является свойством слоя, а при добавлении
console.log(ret);
Незадолго до возвращения заявления я действительно получить либо true
или false
,
Что такое 'this' (' Layer')? Что такое 'this.mouse'? Вы пытались проверить значения '.x' и' .y', чтобы убедиться, что они верны? –
Вы отлаживали этот код? –
Здесь вам понадобится больше контекста. – epascarello