是否可以在localStorage中设置不可修改(常量)项?如果是,如何

Is it possible to set non-modifiable (constant) item in the localStorage? If so, how?

本文关键字:如果 如何 常量 修改 localStorage 设置 是否      更新时间:2023-09-26

这是一种罕见的情况,但是否可以在localStorage中设置该项,使其即使在同一域上也不可修改?如果没有,还有什么工作吗?例如,侦听localStorage访问事件并取消本地存储访问该特定变量的事件?

我知道这是一个奇怪的情况,可能不可能,但有什么想法吗?

示例用例:

您正在创建一个第三方开发人员可以创建的平台应用程序,并将它们添加到同一域。您希望appPolicy可通过localStorage获得,但您不希望其他开发人员修改它。

您不能在localStorage中存储只读数据。但是,如果您想要JavaScript中的只读属性,可以将它们设为私有属性,并通过特权方法公开它们。例如:

function Person() {
    var ssn = '123-456-7890';  // private; cannot be accessed from outside the class
    // privileged method. has access to private data, and is publicly available  
    this.getSSN = function() {
        return ssn;
    }
}

一旦创建了Person的实例,就没有办法(据我所知)更改ssn

我希望这能有所帮助。

相关文章: