Объясните, пожалуйста, почему в переменная a в функции makeDiv получает undefined?
var a=10000;
(function makeDiv(a){
var b=a+1000;
var divsize = ((Math.random()*100) + 50).toFixed();
var color = '#'+ Math.round(0xffffff * Math.random()).toString(16);
$newdiv = $('<div/>').css({
'width':'50px',
'height':'50px',
'background-color': color
});
var posx = (Math.random() * ($(document).width() - divsize)).toFixed();
var posy = (Math.random() * ($(document).height() - divsize)).toFixed();
$newdiv.css({
'position':'absolute',
'left':posx+'px',
'top':posy+'px',
'display':'none'
}).appendTo( 'body' ).fadeIn(100).delay(1000).fadeOut(200, function(){
$(this).remove();
makeDiv();
});
console.log(a);
})();
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
Внутри функции у Вас переменная а
- это параметр, который Вы не подаете в вызов функции.
var a = 10000;
(function makeDiv(/* do not redefine "a" by declaring parameter of the same name */) {
var b = a + 1000;
console.log(a, b);
})();
или
var a = 10000;
(function makeDiv(a) {
var b = a + 1000;
console.log(a, b);
})(a /* pass global "a" as parameter "a" - they may have different names */);
Виртуальный выделенный сервер (VDS) становится отличным выбором
Разбираю тему модульности в vuex на примере приложения с аутентификацией (статья, репозиторий на гитхабе), переписываю с нуля по-своему, сравниваю...
Вот такая вот штука - воспользовался TypeScript-Babel-Starter, Все шло хорошо, пока не появилась необходимость заimportмить js класс
Не сайте меню открывается при клике и наведении, за это отвечает этот код, на компе всё работает, на телефоне не срабатывает при первом касании,...