$(document).ready(function(){
var delivery, number;
$('#delivery input:checked').change(function(){
delivery = $(this).val();
});
$('#number').change(function(){
number = $(this).val();
});
$('#number-of-pairs').change(function(){
let pairs = $(this).val();
let full_price = (parseInt(delivery) + parseInt(pairs)) * parseInt(number);
$('#price').text(full_price);
});
});
var $pairs = $('#number-of-pairs')
, $number = $('#number')
, $price = $('#price')
;
function showPrice(){
var $delivery = $('#delivery input:checked')
, number = parseInt( $number.val() || 1 )
, pairs = parseInt($pairs.val())
, delivery = parseInt($delivery.val() || 0)
;
$price.text(pairs * number + delivery);
}
$('#number-of-pairs, #number, #delivery input').change(showPrice);
$('#number').on('keyup', showPrice);
showPrice();
мы должны писать сначала function () {...}, а не сразу написать тело функции? Знаю, что это связано со внутренним устройством джаваскрипта? Почему работает только так?
var selectedEffect = $( "#effectTypes" ).val();
// Most effect types need no options passed by default
var options = {};
// some effects have required parameters
if ( selectedEffect === "scale" ) {
options = { percent: 50 };
} else if ( selectedEffect === "size" ) {
options = { to: { width: 280, height: 185 } };
}
// Run the effect
$( "#effect" ).show( selectedEffect, options, 500, callback );
function duplicateCount(text){
text = text.toLowerCase();
var len = text.length
, chars = Object.create(null)
, char
, count = 0
;
for(i=0; i<len; i++){
char = text[i];
if(chars[char] == undefined){
chars[char] = false;
} else {
chars[char] = true;
}
}
for(c in chars){
if(chars[c]){
count++;
}
}
return count;
}
()
означает "выполнить функцию". Это может быть как именнованная функция, так и переменная содержащая функцию.function foo1(){ console.log('foo1'); }
var foo2 = function (){ console.log('foo2'); }
foo1();
foo2();
counter
находится функция - поэтому она и выполняется при попытке её вызвать как функцию.var counter = makeCounter();
var counter = (function makeCounter() {
function counter() {
alert('test');
};
return counter;
})();
var counter = (function makeCounter() {
return function counter() {
alert('test');
};
})();
var counter = function() { alert('test'); };
console.log("2, 3, 5, 7, 11")
function GetNumbers(n){
var nums = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199];
return nums.slice(0, Math.max( 0, Math.min(n, nums.length) ) ).join(', ');
}
console.log( GetNumbers(5) );
2, 3, 5, 7, 11