/ /ローカルストレージの角をパースできません2 - 角、ローカルストレージ

ローカルストレージの角をパースできません2 - 角度のあるローカルストレージ

私はlocalstorageに追加したトークンをconsole.logにしようとしています。

  ngOnInit(){
console.log("Member Info: ", JSON.parse(localStorage.getItem("LOCAL_TOKEN_KEY")));
}

これは私には正しいように見えますが、実行すると次のエラーが発生します。

Error: Uncaught (in promise): SyntaxError: Unexpected token o in JSON at position 1
SyntaxError: Unexpected token o in JSON at position 1

誰もがこれに間違って何かを参照してください?

回答:

回答№1は2

私はあなたのデータがすでにオブジェクトであり、再度解析する必要がないためだと思います。

単にこれを試してみてください:

console.log("Member Info: ", localStorage.getItem("LOCAL_TOKEN_KEY"));

Uncaught SyntaxError:JSONの位置1で予期しないトークンo

すでにJSONオブジェクトである要素をJSONオブジェクトに解析しようとするときの典型的なJavaScriptエラーです。

更新:

LocalStorageに保存するときに問題があると思われますので、ここで頭が上がります!

   // To save to LocalStorage
localStorage.setItem("LOCAL_TOKEN_KEY", JSON.stringify({
testData: 123
}));

// To read from LocalStorage
console.log(JSON.parse(localStorage.getItem("LOCAL_TOKEN_KEY")));

LocalStorageをクリーニングするには:

ブラウザ(Chromeの場合)でF12キーを押し、[アプリケーション]タブに移動し、[ローカルストレージ]タブを開いてアプリケーション名を選択します。 LocalStorageが見つかると、それを削除します。


回答№2の場合は1

ローカルストレージに格納する前にトークンをストライ化します。

localStorage.setItem("LOCAL_TOKEN_KEY", JSON.stringify({"aa": "bb"}));
let token = localStorage.getItem("LOCAL_TOKEN_KEY");
JSON.parse(token);

回答№3の場合は0

JSONオブジェクトを文字列に変換することもできます。

console.log("Member Info: ", JSON.stringify(localStorage.getItem("LOCAL_TOKEN_KEY")));