はじめに

Twitter API でお友達 (following) のリストを取得してデータを加工する際,一度もtwitしていないユーザの存在を考慮した方がよさげかも.まぁごく稀ではあるでしょうが...

本題

この API をたたくと,更新が新しい順に最大100人分のお友達のリストが特定のフォーマットで得られます.JSON の場合,

[ { /* お友達のデータ */ }, { /* お友達のデータ */ }, ... ]

のようなものが得られるわけです.

これからあるお友達のtwitの内容 (テキスト) を取得するには,

a_friend.status.text

のように,status プロパティを参照するわけですが,一度もtwitしていないお友達の場合,怒らてしまいます.

というのも,status プロパティが undefined なため です.

typeof a_friend_never_twitted.status == undefined; // true

以上,得られた JSON をごにょごにょする際には,一度もtwitしていない場合も考慮に入れておいた方がいいよね,というお話でした.

そんなわけで

その辺を踏まえた 「twitomonitor [ついともにた]」 の修正版 (0.1.4) を公開しました.

twitomonitor [ついともにた]

ひとまず,次のようなコードを該当部分に追加することで対処しておきました.

var json = 取得したJSON;
for( var i = 0; i < json.length; i++ ) {
  var friend = json[i];

  // statusプロパティが未定義の場合
  if( ! friend.status ) {
    friend.status = {
      id:         0,
      created_at: '',
      text:       ''
    };
  }

  /* ... */
}

おわりに

1か月ぶりにコードを見ましたが,もう処理の流れを忘れかけてました orz

やっぱり紙とかに残しといた方がいいかなぁ...

こちらもあわせてどうぞ

コメントをどうぞ