javascript - 检查 localStorage 中是否存在变量的值

标签 javascript json html local-storage

我有这个 if 语句,如果变量值不等于 localStorage 值,则执行代码。

for(i=0;i<tweets.length;i++){

   tweetID = tweets[i][0].id_str;

   if(tweetID != localStorage['tweet_id']){
       alert("new tweet"); 
       localStorage['tweet_id'] = tweetID;
       console.log(localStorage['tweet_id']);
   }
}

我的问题是它总是进入 if 语句,表明该值永远不等于 localStorage 值。第一次运行此代码时,它将始终进入 if 语句,因为“tweet_id”localStorage 项目未定义。一旦它进入内部,它应该将“tweetID”值写入 localStorage 值,如您在我的代码中所见。该页面每 30 秒刷新一次,如果没有新的推文,这些值应该匹配并且不会进入 if 语句。

事实并非如此。我究竟做错了什么?

通过使用 console.log,这些值在第一次进入 if 语句后匹配,因此除非 tweetID 的值发生变化,否则它不应该再次进入那里。任何想法将不胜感激!

最佳答案

尝试:

if(tweeting !=JSON.parse(localStorage['tweet_text']))

或者:

if(JSON.stringify(tweeting) != localStorage['tweet_text'])

您正在将一个对象与 JSON 进行比较,它永远不会相同。

关于javascript - 检查 localStorage 中是否存在变量的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15461377/

相关文章:

javascript - DOMParser parseFromString 仅在迭代结果主体 childNodes 时删除 Node

javascript - 使用 jquery 在复选框选择上显示/隐藏列

javascript - 当屏幕分辨率低于 600px 时无法隐藏 <a> 标签

javascript - 可以在另一个标签中使用一个标签的属性吗?

jquery - 无法从 jQuery 正确读取 JSON 数组对象

javascript - 如何更改 javascript 中 &lt;input&gt; 标签的文本值

javascript - 在 react 选择上保留占位符

javascript - 这个函数计算什么样的校验和?

来自平面 MySQL 查询结果的 PHP 嵌套数组

python - 如何使用 python 请求调用 Twitter oEmbed API?