当前位置: 代码迷 >> 综合 >> JavaScript反射读取Object属性
  详细解决方案

JavaScript反射读取Object属性

热度:58   发布时间:2024-01-19 09:57:35.0

最近需要用到JS的反射机制读取对象属性,类似Java中的自省,所以写了一个显示对象属性的小函数。

 

函数代码:

var array = new Array();
function showType(obj) {for(var i in obj){if(typeof(obj[i]) == 'object') {showType(obj[i]);array.push("Class " + i);} else {if(typeof(obj[i]) != 'function'){array.push("\t" + typeof(obj[i]) + " " + i + " = " +obj[i] + ";");}}}
}

 

调用代码:

			showType(JSONData);array.reverse();alert(array.join("\n"));array = new Array();

 

另外可以通过eval方法使用字符串来读取对象属性,如:

alert(eval("JSONData.settings.animation.enabled"));

 

  相关解决方案