如何从本地存储中的字符串中删除子字符串?

时间:2018-02-21 10:31:33

标签: javascript jquery local-storage

我有一个本地存储数据,即key => BASIC和value =>“mohankumar”和我的substring => “库玛”。实际上我想从值中删除子字符串。 怎么做到这一点?

以下是我的代码,

var string = localstorage.getItem('BASIC');
var substring = "kumar";
localstorage.removeItem('BASIC');

3 个答案:

答案 0 :(得分:1)

  • 首先, localstorage 中存在拼写错误。修复:S大写为 localStorage

  • 您需要从存储中获取该项目,进行修改然后重新设置(不删除)

  • 您需要使用 String.replace 方法将子字符串替换为空字符串。

    var string = localStorage.getItem('BASIC');
    localStorage.setItem('BASIC',string.replace(substring,''));
    

答案 1 :(得分:1)

您的代码中存在以下几个问题:

  1. localstorage定义为localStorage
  2. 删除子字符串文本后需要再次设置项目
  3. 要检查此代码,只需打开浏览器控制台并运行此代码块即可。在运行此代码之前,请确保此时已设置BASIC

    var string = localStorage.getItem('BASIC');
    var substring = "kumar";
    string=string.replace(substring,'');
    localStorage.setItem('BASIC',string);
    

答案 2 :(得分:0)

您无需删除整个存储项目来替换名称,只需覆盖它。

这说明了要采取的步骤:

// Set the storage and log it.
const name = 'mohankumar'
localStorage.setItem('BASIC', name)

const storedName = localStorage.getItem('BASIC')
console.log(storedName)

// Replace name and store it.
localStorage.setItem('BASIC', storedName.replace('kumar', ''))
console.log(localStorage.getItem('BASIC'))

此外,它应该是localStorage不是 localstorage(大写S)。

以下是您可以使用的JSFiddle的实例:https://jsfiddle.net/wppq6o3m/7/