我是否需要在setItem之前从localStorage中删除Item?

时间:2015-01-19 08:47:06

标签: javascript local-storage

我有这段代码:

开发人员在setItem之前从本地存储执行removeItem。在我看来,没有必要,但我不是百分百肯定:

putCacheData = (): void => {
    this.data = {
        authenticated: this.authenticated,
        bearerToken: this.bearerToken,
        expirationDate: this.expirationDate,
        firstName: this.firstName,
        fullName: this.fullName,
        lastName: this.lastName,
        roleId: this.roleId,
        subjectId: this.subjectId,
        userName: this.userName
    };
    localStorage.removeItem('userData');
    localStorage.setItem('userData', JSON.stringify(this.data));
}

是否有可能需要removeItem?

1 个答案:

答案 0 :(得分:5)

不,他们绝对没有理由。如果变量已经存在,那么它将被覆盖,因此在设置之前无需删除。

唯一可以产生差异的方法是在this.data的字符串化过程中出现异常,但除非这些数据中有些奇怪的东西(如圆形结构),否则不会发生。