Js中JSON.parse関数解析によるデータ異常
3474 ワード
Js中JSON.parse関数解析によるデータ異常
今日、プロジェクトで問題が発生しました.スキャン機能でスキャンしたバーコードをフロントエンドに戻します.フロントエンドの学生が戻ってきたバーコードが正しくありません.後ろの2人とソースデータが合わないので、Androidだけがこの問題があります.Androidだけがこの問題があれば、Android側で調べることができます.最終的にAndroidがフロントエンドに返すデータに問題があるのか、なぜフロントエンドでエラーが発生したのか.フロントエンドの学生の呼び出し方法も大丈夫ですか?いったいどこが间违っているのか、logを通じてデータが
确かに元のデータと合わないので、资料を探してテストしたところ、データが16ビットを超えると间违いが発生することがわかりました.
これも大丈夫です.では、どうして上のほうに問題がありますか.資料の検索を経て、json文字列の内容と関係があるかもしれないことを知った.
出力logは解析が終わった後に確かにnumタイプであることを表示して、それではこれはどのように解決して、
以上の資料の照会とテストに基づいて、プロジェクトに適用して本当に問題が解決します.
今日、プロジェクトで問題が発生しました.スキャン機能でスキャンしたバーコードをフロントエンドに戻します.フロントエンドの学生が戻ってきたバーコードが正しくありません.後ろの2人とソースデータが合わないので、Androidだけがこの問題があります.Androidだけがこの問題があれば、Android側で調べることができます.最終的にAndroidがフロントエンドに返すデータに問題があるのか、なぜフロントエンドでエラーが発生したのか.フロントエンドの学生の呼び出し方法も大丈夫ですか?いったいどこが间违っているのか、logを通じてデータが
JSON.parse()
関数を経てデータが変化したことを発见して、自分で例を书いて西のコードを见ます
var num="123456789987654333";
var parse=JSON.parse(num);
123456789987654340
确かに元のデータと合わないので、资料を探してテストしたところ、データが16ビットを超えると间违いが発生することがわかりました.
JSON.parse()
方法はJSON文字列を解析するために使われています.前にも他のjson文字列を解析したことがありますが、このような问题はありません.var obj= '{"result":true, "count":42}';
var res=JSON.parse(obj)
res
{result: true, count: 42}
これも大丈夫です.では、どうして上のほうに問題がありますか.資料の検索を経て、json文字列の内容と関係があるかもしれないことを知った.
var num="123456789987654333";
var res=JSON.parse(num)
typeof res
"number"
出力logは解析が終わった後に確かにnumタイプであることを表示して、それではこれはどのように解決して、
var num="123456789987654333";
関数を解析する時に中がnumタイプだと思わないようにすればいいでしょう、それではどのようにして次のテストを見ます:var num=" \"123456789987654333 \" ";
var res=JSON.parse(num)
typeof res
"string"
res
"123456789987654333 "
以上の資料の照会とテストに基づいて、プロジェクトに適用して本当に問題が解決します.