如何运行存储在cookie中的js函数

How to run a js function stored in a cookie

本文关键字:cookie 中的 js 函数 存储 何运行 运行      更新时间:2023-09-26

我在一个网站上有一个部分,其中有多个页面是用ajax访问的。我想运行一个存储在cookie中的js函数,这样我就可以在从几个选择框中进行一些修改后刷新页面的内容,并保持在同一页面上(在cookie中,我存储了一个具有分页信息的函数,以及选择的月份和年份,看起来像这样"pontaje(2,1,7,2015)")。cookie的名称是"pagina"。所以我想运行存储在cookie中的函数。我觉得应该是这样的:

        var pagina = getCookie("pagina");
        new pagina;

我在控制台得到这个错误:Uncaught TypeError: string is not a function

我需要的实际结果是"new pontaje(2,1,7,2015);"

你能帮我做这件事吗?

首先,我不认为这里的正确解决方案是将函数存储在cookie中,而是存储值并将它们发送给函数。

如果你真的想运行字符串模式的javascript代码,从cookie中检索,你可以使用:

  1. eval
  2. setTimeout (javascriptString, milliSeconds)

,但是你应该考虑安全性,因为这些代码来自客户端,你不能真正控制它的值。

您可以eval()它,但这是一个非常糟糕的主意,并且存在很大的安全漏洞。

var pagina = getCookie("pagina");
eval("new "+pagina);

你必须重新考虑你的代码或你的工作流程,这是一个非常非常糟糕的主意。