モバイルデバイスのIOS 10でのみ発生するクライアントサイトでこのエラーのトラブルシューティングを試みています。彼らはIOS 10にデバイスをアップグレードする前にそれが働いていると言いました。IOS 9に戻すことは実際にこのエラーを生成しません。これはJSON.parseと一緒に、ローカルストレージデータ(this.local [i]))とともに何かのように見えます。 jsエラー、サンプルデータ、およびjavascriptスニペットについては、以下を参照してください。iPhone IOS 10 Safari JSON parse:予期しないエラーが発生しました "function"
JavaScriptエラー:
[Error] SyntaxError: JSON Parse error: Unexpected identifier "function"
parse (Locus.js:40)
データサンプル:(this.local)
[{"ObservationID":"444","Username":"blah","Deleted":0,"Flagged":0},
{"ObservationID":"555","Username":"blah","Deleted":0,"Flagged":0}]
Javascriptを:
Locus.prototype.loadFromLocal = function() {
if (this.local) {
for (var i in this.local) {
var len = ('' + this.local[i]).split('{').length;
if (len != 1) {
this.data[i] = JSON.parse(this.local[i]);
}
else {
if (parseFloat(this.local[i]) == this.local[i]) {
/* local storage is a number */
this.data[i] = parseFloat(this.local[i]);
}
else
{
/* already parsed */
this.data[i] = this.local[i];
}
}
}
}