错误变量空间未定义原因

err variable space is undefined why?

本文关键字:未定义 空间 变量 错误      更新时间:2023-09-26

我运行下一个代码,我错过了一些东西,对我来说似乎还可以:

window.onload = TitleFieldInit;
function TitleFieldInit() {
    var str = document.cookie.split("=")[1];
    var space = str.split("=")[1];
    space = space.split(";")[0];
    alert(space);
    // while( space.indexOf('%20' )+1) space = space.replace(/%20/,' ');
    if (document.cookie != "") {
        document.getElementById("TitleField").innerHTML = "Your Title is : " + space;
    }
}​

我在FireFox rror中犯了错误"空间未定义"为什么?在 chrome 中"未捕获的类型错误:无法调用未定义的方法'拆分'谢谢你的帮助。

此代码永远不适用于任何输入。

str已经是被=分割的结果的一部分,即它不包含=符号。

然后你再次将该结果拆分为 = ,这当然会返回你一个元素数组,str.split("=")[1]将永远是undefined的。

看起来您正在尝试读取 cookie 值...但根本不需要第二.split("=")

啊,你在不同的浏览器中得到了不同的结果,因为它们的cookie中包含不同的数据。

PS:您可以编写space = space.replace(/%20/g,' ');而不是while( space.indexOf('%20' )+1) space = space.replace(/%20/,' ');来一次替换所有这些。