位置1エラーのJSONの予期しないトークンo



Unexpected Token O Json Position 1 Error



このエラーは通常、JSON.parse()メソッドと関連する操作JSON.stringify()メソッドで構成されます。まず、これら2つのメソッドの役割を確認します。

JSON.parse()は、文字列jsonからオブジェクトを解決するために使用されます

var str = '{'name':'LeonWu','age':'18'}' JSON.parse(str) // result is an Object // age: '18' // name: 'LeonWu'

オブジェクトから文字列を解析するためのJSON.stringify()

var a = {a:1,b:2,c:'LeonWu'} JSON.stringify(a) // result is '{' a ': 1,' b ': 2,' c ':' LeonWu '}'

与えられた理由

データを元々オブジェクトに変換したいので、JSON.parse()このメソッドは文字列jsonオブジェクトを解析するためのものであり、エラーを変換します



なぜそんな間違いがあるのですか

パラメータとしてのオブジェクトはJSON.parse()を渡したため、最初はtoString()メソッドを使用して文字列にMoliし、結果は '[objectObject]'になります。

JSON.parse()最初の文字 '['は配列の先頭として理解され、2番目の文字 'o'は処理方法がわからないため、JSONの予期しないトークンoの上のエラーメッセージを位置1にスローしました。



解決

不要な変換を削除します。これらの2つのメソッドを使用しない操作でもこの問題が報告された場合は、sessionStorage関連の操作関数など、このメソッドの内部使用を使用する関数である必要があります。この状況に注意してください。パラメーターまたは文字列を渡すオブジェクトです。そのようなエラーを解決します。