gpt4 book ai didi

javascript - 将 JavaScript 函数存储在 cookie 中?

转载 作者:行者123 更新时间:2023-12-02 14:58:20 26 4
gpt4 key购买 nike

是否可以将 JavaScript 函数保存在 cookie 中?如果是这样,怎么办?

例如,我有键盘快捷键的用户设置,但与每个击键相关的行为可以是自定义的。我希望将这些可能唯一且特定于用户的映射保存在 cookie 中。

我目前正在使用 Angular 1.4.7 来放置 cookie。它返回的数据剥离了该函数。

最佳答案

不应该将该函数保存在 cookie 中。相反,您应该创建一个包含用户可以执行的所有可能方法的对象,并存储方法名称,即:

var customUserFunctions = {
someMethod: function() { ... },
...
};

然后将"someMethod"存储在cookie中,并使用customUserFunctions[variableHoldingSomeMethodString]()调用它。

话虽这么说,这就是将函数存储在 cookie 中的方式:

// Define your function
var myFunc = function() { console.log("I'm a stored function!"); };
// Turn it into a string
var myFuncString = myFunc.toString();
// Store it in your cookie
document.cookie = myFuncString;
// get your function back
var myCookieFunc = eval(document.cookie);
// call it
myCookieFunc();

请注意,这会产生一个安全漏洞,攻击者可以在其中修改 cookie,并且您的代码将执行他们放入其中的任何函数。

关于javascript - 将 JavaScript 函数存储在 cookie 中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35611095/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com