連想配列(オブジェクト)

 var obj = { name : "taro", age : 10, sex : "man" };
 
 for ( i in obj ) {
   console.log(i);       // name, age, sex
   console.log(obj[i]);  // taro, 10, man
 }
 
 console.log(obj.name);

なお、普通にforを使うと、prototypeで設定されたプロパティも参照する。

 Object.prototype.foo = function () {};
 var obj = { name : "taro", age : 10, sex : "man" };
 
 for ( i in obj ) {
   console.log(i);       // name, age, sex, foo
 }

これを回避するには、

 for ( i in obj ) {
   if ( obj.hasOwnProperty(i) === true ) {
     console.log(i);     // name, age, sex
   }
 }

のようにhasOwnProperty()を使う。

キーの存在を確認する

 var obj = { key: undefiled };
 if ( "key" in obj ) {
  console.log("key exists");
 }

inを使う。

参考


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS

Last-modified: 2013-10-13 (日) 09:25:07