Javascript 尝试将函数返回值赋给变量

Javascript 尝试将函数返回值赋给变量,javascript,html,Javascript,Html,我有一个脚本,它可以检查所选元素的值是否等于span id。除了变量赋值之外,其他一切都正常。 更准确地说:函数本身可以工作(如果我将alert object.id显示在右侧),但变量赋值不能。如果我试图提醒变量,它会说它未定义。我相信这是个小错误,如果有人能指出这一点,那就太好了: var spanId = (function getId(object) { return object.id; //alert(object.id); })(); 当您反

我有一个脚本,它可以检查所选元素的值是否等于span id。除了变量赋值之外,其他一切都正常。 更准确地说:函数本身可以工作(如果我将alert object.id显示在右侧),但变量赋值不能。如果我试图提醒变量,它会说它未定义。我相信这是个小错误,如果有人能指出这一点,那就太好了:

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

当您反复调用变量时,设置该变量不会更新该变量。您需要重新构造代码以更新该变量

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

现在
spanId
将具有当前值。

我不明白警报如何正确。调用函数时没有传递任何参数,因此您将尝试发出警报
undefined.id
,这将引发异常,强烈推荐K&R风格的方括号而不是GNU风格的方括号Show
未定义的
在工作时是否有id?@Quentin我没有发布整个脚本。您希望在调用getId时更新spanId吗?这是不会发生的。该函数与该变量没有关系。