2016-07-05 3 views
-2

У меня есть скрипт, который проверяет, равен ли значение выбранного элемента идентификатору span. Все работает отлично, за исключением назначения переменной. Точнее: сама функция работает (если я предупреждаю object.id, она отображается правильно), но присваивание переменной не работает. Если я попытаюсь предупредить переменную, она говорит, что она не определена. Я уверен, что это какая-то незначительная ошибка, и было бы очень хорошо, если бы кто-то может указать на это:Попытка присвоить функции возвращаемое значение переменной

var spanId = (function getId(object) 
    { 
    return object.id; 
    //alert(object.id); 
    })(); 
+5

Я не понимаю, как предупреждение может быть правильным. Вы не передаете какие-либо аргументы при вызове функции, поэтому вы пытаетесь предупредить 'undefined.id', который выдает исключение. – Quentin

+0

сильно, настоятельно рекомендую скобки стиля K & R над скобками стиля GNU –

+0

Как «undefined» имеет идентификатор, когда он работает? – epascarello

ответ

0

Установка переменной не будет обновлять эту переменную при вызове его снова и снова. Вам необходимо изменить структуру кода, чтобы обновить эту переменную.

var spanId; 
function getId(object) { 
    spanId = object.id; 
}; 

сейчас spanId будет иметь текущее значение.

+0

Спасибо. Я чувствую себя глупо... – Fajeth88

Смежные вопросы