показательна картина модуль внутренней внешняя переменная рассогласования
<html><body><button>setSpeed</button>
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
<script>
$(document).ready(function(){
$('button').on('click', function(){
_.setSpeed();
console.log('_.slow: ' + _.slow);
});
});
var _ = (function(){
var slow = 4;
function setSpeed(){
if (slow == 4) {
slow = 1;
} else if (slow == 1){
slow = 16;
} else {
slow = 4;
}
console.log('slow: '+ slow);
}
return { slow: slow, setSpeed: setSpeed };
})();
</script></body></html>
Я не понимаю, почему console.log для медленного и _.slow не совпадают? Что мне не хватает?
Возвращая как медленные, так и функции setSpeed в IIEF, я думаю, они должны совпадать.
Вы можете попытаться добавить функцию геттера для медленного, если вы хотите проверить значение slow внутри yout IIEF. 'function getSlow() { return slow; } '}' в вашей части 'return'' return {getSlow: getSlow, setSpeed: setSpeed}; ' или вы можете связать функцию-геттер для вашего свойства' slow'. (Https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Functions/get) –