Для начала: это НЕ то, как вы должны объявлять переменную в javascript:
attackValue = $(this).text();
Это загромождает пространство переменных для программ.Вы должны 'всегда' объявлять переменную в javascript с помощью ключевого слова var
.
Когда я хочу использовать attackValue вне click (), оно не будет определено.
Это зависит от того, где и когда вы хотите его использовать.Рассмотрим следующий код :
var attackValue = 'some value';
function setValue() {
attackvalue = 'some other value';
}
console.log(attackvalue); // this would output some value, because the function hasn;t run yet
setValue();
Однако, если вы сделаете :
var attackValue = 'some value';
function setValue() {
attackValue = 'some other value';
}
setValue();
console.log(attackValue); // this would output some other value, because the function did already run
Обратите внимание, что приведенный выше код должен выполняться в закрытие .Или это все еще загромождает пространство переменных (даже при использовании ключевого слова var
).Так это будет выглядеть примерно так:
(function() { // yay closure, now all variables defined in here will stay in here
var attackValue = 'some value';
function setValue() {
attackValue = 'some other value';
}
setValue();
console.log(attackValue); // this would output some other value, because the function did already run
})();