Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/368.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何运行存储在cookie中的js函数_Javascript_Function_Cookies - Fatal编程技术网

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

Javascript 如何运行存储在cookie中的js函数,javascript,function,cookies,Javascript,Function,Cookies,我在一个网站上有一个部分,它有多个使用ajax的页面。我想运行一个存储在cookie中的js函数,这样我可以在从几个选择框进行一些修改后刷新页面内容,并保持在同一页面上。在cookie中,我存储了一个包含分页信息的函数,以及所选的月份和年份,看起来像pontaje2,1,72015。 cookie的名字是pagina。 所以我想运行存储在cookie中的函数。 我认为应该是这样的: var pagina = getCookie("pagina"); new pa

我在一个网站上有一个部分,它有多个使用ajax的页面。我想运行一个存储在cookie中的js函数,这样我可以在从几个选择框进行一些修改后刷新页面内容,并保持在同一页面上。在cookie中,我存储了一个包含分页信息的函数,以及所选的月份和年份,看起来像pontaje2,1,72015。 cookie的名字是pagina。 所以我想运行存储在cookie中的函数。 我认为应该是这样的:

        var pagina = getCookie("pagina");

        new pagina;
我在控制台中得到这个错误:uncaughttypeerror:string不是函数

我需要的实际结果是新的pontaje2,1,72015


你能帮我做这件事吗

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

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

评估 setTimeout javascriptString,毫秒

但您应该考虑安全性,因为该代码来自客户端,而您实际上没有控制它的值。 你可以评估它,但这是一个非常糟糕的主意,而且有一个很大的安全漏洞

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

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

总是有评估,但也有Ew。为什么不直接存储数据?不要这样做。如果您可以通过JavaScript访问cookie,那么其他JavaScript程序也可以。任何人都可以更改cookie的内容并插入任意JavaScript,然后对其进行评估。哎呀,蜜蜂阿姨,我给你一个烹饪技巧:不要闻到XY问题的味道。这是一个非常糟糕的主意,因为它会产生一系列安全问题,你肯定不想盲目执行来自用户的任何东西。这里的人们可能会做一些恶意的事情。谢谢大家的评论和回答。我存储了这些值,并像这样使用它们:var paginaPTrepartizare=getCookiepaginaPTrepartizare;var res=paginaPTrepartizare.split,;新庞塔杰雷斯[0],决议[1],决议[2],决议[3];具有此值的cookie:2,1,72015