zoukankan      html  css  js  c++  java
  • JS中的反射机制

    反射机制:指程序在运行时能够获取自身的信息。

        例如:对于一个正在使用的对象,能够知道它有哪些方法和属性

    JavaScript 中利用for(...in...)语句实现反射。

        例如:

     for(var p in obj){
            if(typeof(obj[p]=='function')){
                    obj[p]();
               }else{
              alert(obj[p]);
           }
    }
    

      这里var p 表示声明的一个变量,用以存储对象的属性或方法。遍历obj对象的所有属性和方法,遇到属性则弹出它的值,遇到方法则立即执行。在后面可以看到,在面向对象的JavaScript程序设计中,反射机制是很重要的一种技术,它在实现类的继承中发挥了很大的作用。

    用反射机制传递样式参数:

    function setStyle(_style){
      //得到要改变样式的界面对象
      var el = getElement();
      for(var p in _style){
          el.style[p] = _style[p];
      }
    }
    

     程序中遍历 _style的每个属性,得到属性名称,然后再使用方括号语法将el.style中对应的属性赋值为_style中的相应属性的值。从而,el中仅改变指定的样式,而其他样式不会改变,得到了所要的结果。 

  • 相关阅读:
    二叉搜索树的第k个结点
    序列化二叉树
    把二叉树打印成多行
    按之字形顺序打印二叉树
    对称的二叉树
    二叉树的下一个结点
    删除链表中重复的结点
    链表中环的入口结点
    字符流中第一个不重复的字符
    基数排序的理解和实现(Java)
  • 原文地址:https://www.cnblogs.com/mdorg/p/2987095.html
Copyright © 2011-2022 走看看