なんか最近いろんな言語でJSON扱う敷居が低くなってきたので、ファイルでデータを受け渡す時も割とJSONを使ったりする。こないだ他の人が作ったアプリが吐き出したJSON読む案件があって、こちとらElectron(Javascript)でデスクトップアプリ作ってるので、ファイル読み込んでからJSON.parse()すれば楽勝じゃね?てな感じでサクッとfs.readFile()やってみたわけですよ。
Uncaught SyntaxError: Unexpected token in JSON at position 0
そしたら「ファイルの先頭に変なんあるよ!!」っぽい事を言われてパースしてくんない。まさかJSONのデータフォーマット腐っとるんちゃうか?と思ってチェッカーに入れたけども、問題なし。不審に思いながら、バイナリエディタでファイル開いてみたところ、データの先頭に「EF BB BF」が入ってた。うわぁ、BOMつきUTF-8だこれ!