javascript - 检查未定义的 JavaScript 变量?

标签 javascript jquery

我正在尝试检查是否定义了变量,如果是,则运行 ajax 请求...如果没有,我希望将用户重定向到设置变量的单独页面。

例如我想要这样的东西:

    // if variable is undefined
    if (typeof accessKey === 'undefined') {
        alert('the variable is not set!');
    } else {
            var accessKey = 'some random string generated from google';
                    alert('the variable is set!');
                    proceed to refresh the page and run through check again.
    }

因此,页面第一次运行时,它会检查变量是否已设置。如果未设置该变量,它将设置该变量,然后重新加载页面并再次运行检查。

问题是“accessKey”始终返回未定义,但代码运行起来就像变量已定义一样。为什么?

最佳答案

If the variable is not set it will set the variable and then reload the page [emphasis mine] and run through the check again

有一个问题:变量(或任何其他 js 代码)在页面重新加载之间不会保留。

如果您需要持久保存某些内容,则必须使用其中之一:

  • 服务器端 session 或数据库(使用 ajax 将数据传递到服务器并将其保存在那里)
  • 客户端存储(例如 localStorage )。
  • Cookie(可以在客户端或服务器端生成)

关于javascript - 检查未定义的 JavaScript 变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18772894/

相关文章:

javascript - 我可以仅使用 JavaScript 和按钮元素更改整个网站(2 页)上的所有图片吗?

javascript - 如何将 HTML 页面下载为图像?

javascript - JQuery:点击除某些元素外的任何地方

javascript - 使用选择器在各处选择用户名

javascript 函数在 cakephp 2 中无法正常工作

JavaScript:强制 IE 打开新选项卡而不是窗口?

javascript - InDesign CS4 - Javascript - 使文本区域透明

javascript - 需要其他数组中的数组

javascript - 如何修复 javascript 无法在较新的 jquery 库上工作但在较旧版本的 jquery 库上工作的问题?

javascript - 根据 URL 更改更改 DOM 元素类名称