タグ

jsonとJavaScriptに関するniidomeのブックマーク (7)

  • JSONらしき文字列をオブジェクトに変換するJavaScript

    programming notes. mainly about JavaScript / jQuery. [@Takazudo] [takazudo@gmail.com] Hint: alt + / var data = '{a:123,b:"hogehoge"}';こういう文字列があるとき、以下のような謎の黒魔術を唱えるとオブジェクトになる。 var obj = (new Function("return " + data))();は?と思われるこの1行を実行すると、functionが作られ、その中でreturnに続けてdataの中身が書かれてることになるのでオブジェクトが返ってくるという。自分は、eval(data)だと思ってたんだけど、evalはスコープを作らないのと、jsのminifierらでうまくいかなかったりするし、evalこそ真の黒魔術やでーということなので、こんな方法が使わ

    JSONらしき文字列をオブジェクトに変換するJavaScript
  • 最近のブラウザは、ネイティブJSONサポートがあるんだね - 檜山正幸のキマイラ飼育記 (はてなBlog)

    JSONをデータとしたAjax通信の実験をしようと思ったのですが、Ajax通信以外に何もやらないので、Ajaxのみのライブラリを探してみました。 すこし古め(2010年11月)の情報ですが次の記事を見つけました。 Ajax(XHR)如きにjQueryは重過ぎ!!な時の軽量ライブラリ集 ここで紹介されている microajax - Tiny AJAX library はほんとに小さいライブラリです。それを僕が膨らませてしまったのが下に貼り付けたソースです。若干読みやすくしたのと、ネイティブJSONサポートを使ってみたところが変更点です。 JavaScriptで書かれたJSON処理ライブラリがいくつかありますが、今ではブラウ自身が JSON.parse(text) と JSON.stringify(data) をサポートしています。古いブラウザへの考慮が不要なら、ネイティブJSONを使うとスッ

    最近のブラウザは、ネイティブJSONサポートがあるんだね - 檜山正幸のキマイラ飼育記 (はてなBlog)
  • TwitterのステータスIDが53bitを越えたお話 - tmytのらくがき

    僕の記事の間違いを指摘していただいているすばらしい記事です。僕の記事よりこちらの記事をご覧ください。 http://archive.guma.jp/2010/12/twitter-json.html 先日、29日の7時過ぎごろにTwitterのステータスIDが53bitを越えました。 こんな中途半端なビット数を超えただけでなぜこんな記事にするかというと、一部のクライアントで動作がおかしくなることがあるからです。 (14:14 追記しました) (14:31 もひとつ追記しました) TwitterAPIはXMLとJSONの2種類で結果を取得できます。このうちXMLで処理してる場合は内部で64bit INTで処理していれば特に問題は起きません。 問題が起きるのはJSONの場合です。JSONはJavascriptでevalすればそのまま中身が取り出せることからもわかるように、Javascript

    TwitterのステータスIDが53bitを越えたお話 - tmytのらくがき
  • JavaScriptでJSONをeval - sshi.Continual

    JSON文字列をevalして値を取りたいときに挙動が妙ではまった、という話を聞いたので、Firefox1.5上のFireBugのコンソールで何パターンか試してみた。 {"key":"value"}というJSONデータが文字列で渡ってきて、それをevalしてJavaScriptの値として使いたい、という想定。 間違ったJSON文字列をevalした場合 >>> jsonstr = "{key:\"value\"}" "{key:"value"}" >>> var obj = eval(jsonstr) >>> obj "value" >>> typeof(obj) "string"JSONのオブジェクトでは、ラベルも""でくくって文字列にしないといけないのだが、まずはそれを忘れた場合を試してみた。結果として返ってくるのは、なんとJSONのハッシュの要素にしたつもりの文字列のみ。 正しいJSON

    JavaScriptでJSONをeval - sshi.Continual
  • jQueryのajax | コスミー報告書[社外秘]

    jQueryとCakePHPの異種格闘技戦。jQueryが勝っとる。これからはjQueryか。prototypeはそれ自体が汎用的な単語のため、フェアな勝負にならない。 そういうわけでjQueryのajaxを使ってみて(とりあえず挫折)したのでメモ。(いや、ajaxを使うというだけなら簡単。使い方が悪いだけ。) $.ajax()を使えばいい。 $.ajax({ url: 'hogehoge.htm', type: 'POST', dataType: 'json', // xml、 html、script、json data: params, timeout: 1000, error: function(){ // エラー時 alert('Error'); }, success: function(htm){ // コールバック } }); 上記コードで’hogehoge.htm’にpost

    jQueryのajax | コスミー報告書[社外秘]
  • http://blog.fulltext-search.biz/articles/2007/10/03/how-to-jsonp-by-jquery-on-rails

  • はじめてのJSONPプログラミング

    前回の「ブログの☆の総数を取得できるAPIを組み込みました」では、はじめてJSONPを使ってみました。以下、実際にJSONPを使ってみての覚え書きと、これからJSONPプログラミングをはじめる方へのTIPSです。 ブログの☆の総数を取得できるAPIは、はてなスターに登録されたブログの情報を取得できるJSON形式とJSONP形式で提供されているAPIでした。 はてなスター日記 - ブログの☆の総数を取得できるAPIを追加しました JSONとは、JavaScriptにおけるオブジェクトの表記法をほぼそのまま利用したデータフォーマットのことで、JSONPはJSONにちょっと記述を加えて、クロスドメインのJSONデータを非同期で読み込ませて処理するための手法のことです。(詳しい定義については、自分で調べてみてください) 通常、Webブラウザでは他ドメインのJavaScriptのデータを読み込んで実

    はじめてのJSONPプログラミング
  • 1