document.title返回undefined。为什么是这样?

时间:2014-06-19 02:51:06

标签: javascript html css properties title

我在这里有这个变量:

var money=0;

此变量不断更新,请记住这一点。我正在使用该属性

document.title

在页面标题中显示变量“money”,如下所示:

var money=0;
document.title = money;

当我刷新页面时,标题显示未定义,所以我猜测

document.title

返回undefined。为什么是这样?另外,变量“money”会不断在页面标题中更新?如果没有,我怎么能做到这一点?谢谢!

2 个答案:

答案 0 :(得分:2)

分配:

document.title = money;

money中的值一次性分配给document.title。对money的任何进一步更改都不会反映在document.title中,除非您再次进行更改。

如果您在执行上述分配后在标题中看到undefined,那么这只能是因为money尚未声明或初始化,因此它还没有值或某些内容已经将其值设置为undefined


如果您希望文档的标题定期反映money变量中的值,那么最好的方法是创建一个简短的小函数,您可以调用它来更新money变量而不是直接更新它,那个简短的小功能也将为你更新标题:

function updateMoney(val) {
    money = val;
    document.title = val;
}

然后,只要您想要更改money值,只需致电:

updateMoney(100);

而且,这两件事都会为你更新。


还可以创建一个定期计时器,该计时器将不断将货币值复制到标题中,但效率低得多(特别是在电池供电的设备上)。

答案 1 :(得分:1)

我希望您使用jQuery代替:

var money=0;
$('title').text(money);