大丈夫なんかな。

最近、jQuery使ってるんだけど、さっきちょっと中覗いてみたんです。そしたら、JSON扱う部分で単にevalしてるだけに見えるんだけど、大丈夫なのかなこれ。
jquery-latest.jsの2148行目付近。

// Get the JavaScript object, if JSON is used.
if ( type == "json" )
  eval( "data = " + data );

気になったのでprototype.jsも見てみたけど、同じみたい。
prototype.js 1.5.0 962行目付近。

  evalJSON: function() {
    try {
      var json = this.getHeader('X-JSON');
      return json ? eval('(' + json + ')') : null;
    } catch (e) { return null }
  },

どうせ両方ともXHRで取ってきたものを解釈するだけだから、そうそう危険な物が飛んでくることもない*1だろうしって事でいいのかな。

*1:クロスドメイン制約があるから、信頼できない外部のサーバから取ってくることはない。自前のサーバが吐くデータが信用できるかはさておき。