从网上有很多显示js对象的属性和方法。 可以看到原理是相似的。
如果想看到实际效果,可以先声明一些属性和方法,否则看不到。 仔细看看下面的反例。
函数显示ObjProperty(Obj)
varPropertyList='';
varPropertyCount=0;
对于(iinObj){
if(Obj.i!=null)
PropertyList=PropertyList+i+'属性:'+Obj.i+'rn';
别的
PropertyList=PropertyList+i+'方法rn';
复制代码代码如下:
明天网上的JavaTang博客找到了一种遍历JavaScript对象所有属性名和值的方法,想用该方法的时候特别直观方便。 代码如下所示:
复制代码代码如下:
/*
*obj需要遍历的对象
*作者:JetMah
*/
功能性Propos(obj){
varprops="";
//开始遍历
对于(varpinobj){
//方式
if(typeof(obj[p])=="函数"){
obj[p]();
}别的{
//p为属性名,obj[p]为对应属性的值
props+=p+"="+obj[p]+"t";
//最后显示所有属性
警报(道具);
AJAX的JavaScript反射机制,反射机制是指程序只有在运行时才能获取自己的信息。 例如,一个对象可以在运行时知道它有哪些方法和属性。 反射是在 JavaScript 中借助 for(...in...) 句子实现的。 句型如下:
对于(varpinobj){
//句子
在Ajax编程中,经常需要动态改变界面元素的样式。 这可以通过对象的样式属性进行更改。 例如,要将背景颜色更改为白色,您可以编写:
element.style.backgroundColor="#ff0000";
基本上,CSS 中的所有属性也可以在 JavaScript 中使用:
复制代码代码如下:
函数集样式(_style){
//获取改变样式的界面对象
varelement=getElement();
element.style=_style;
复制代码代码如下:
varstyle={
颜色:#ffffff,
背景颜色:#ff0000,
这时,你可以这样调用该函数:
设置样式(样式);
或者直接写成:
setStyle({颜色:#ffffff,backgroundColor:#ff0000,borderWidth:2px});
这段代码看似没有问题,但实际上,当setStyle函数内部使用参数_style作为element.style参数时,如果该元素已经具有某种样式javascript 获取对象属性,例如之前已经执行过:
element.style.height =“20px”;
但是_style不包含高度的定义javascript 获取对象属性,因此元素的高度样式丢失了,这不是最初想要的结果。 为了解决这个问题,可以使用反射机制重绘setStyle函数:
复制代码代码如下:
函数集样式(_style){
//获取改变样式的界面对象
varelement=getElement();
为(varpin_style){
element.style[p]=_style[p];
程序中会遍历_style的各个属性,获取属性名称,然后利用方括号句型将element.style中对应的属性参数设置为_style中对应属性的值。 因此,在element中只改变指定的样式,而其他样式不会改变,就得到了想要的结果。 ^-^