2014年2月9日日曜日

[CoffeeScript]オブジェクトのプロパティを一覧表示

オブジェクトのプロパティの値をCoffeeScriptで一覧表示する方法。

CoffeeScriptでは、「for of」を使ってプロパティ数分ループを行って処理をする。
JavaScriptの場合は、「for in」なので微妙に違いがあって間違えやすい気がする。

コード例

for key, value of 変数名で、オブジェクトの全プロパティに対して処理が出来る。
hoge =
  k1: 'v1'
  k2: 'v2'

for key, value of hoge
  console.log key, ' = ', value

class Hoge
  prop1: 'prop1'
  prop2: 'prop2'

for key, value of new Hoge()
  console.log key, ' = ', value

実行結果

オブジェクト、インスタンスともにプロパティ名とプロパティの値が出力される。
k1  =  v1
k2  =  v2
prop1  =  prop1
prop2  =  prop2